Forskel mellem exit (0) og exit (1)

Forfatter: Laura McKinney
Oprettelsesdato: 2 April 2021
Opdateringsdato: 4 Kan 2024
Anonim
Lagoon 46 Catamaran, Sailing 2600nm, Ep4
Video.: Lagoon 46 Catamaran, Sailing 2600nm, Ep4

Indhold


Udgang (0) og udgang (1) er hoppsætningerne fra C ++, der får kontrollen til at hoppe ud af et program, mens programmet er i udførelse. Både funktionerne exit (0) og exit (1) bruges til at afslutte programmet, men der er en stor forskel mellem exit (0) og exit (1). Afslutningen (0) viser den vellykkede afslutning af programmet, og afslutningen (1) viser den unormale afslutning af programmet.

Lad studieforskellen mellem exit (0) og exit (1) ved hjælp af sammenligningskort.

  1. Sammenligningstabel
  2. Definition
  3. Vigtige forskelle
  4. Konklusion

Sammenligningstabel

Grundlag for sammenligningexit (0)exit (1)
GrundlæggendeRapporterer operativsystemet om programmets "vellykkede / normale" afslutning / afslutning.Rapporterer operativsystemet om den "unormale" afslutning af programmet.
Syntaksexit (0);exit (1);
indikererDet angiver, at opgaven er udført med succes.Det viser, at opgaven er blevet afbrudt imellem på grund af fejlen.
MakroerEXIT_SUCCESSEXIT_FAILURE

Definition af exit (0)

Funktionsafslutningen (0) er et springangivelse af C ++. Det bruges til at afslutte programmet eller lade kontrollen afslutte programmet. Det rapporterer operativsystemet om den vellykkede afslutning af programmet, hvilket indikerer for operativsystemet, at programmets opgave er afsluttet. Makroen, der bruges til returkode “0”, er “EXIT_SUCCESS”, så du kan bruge den i en mådeafslutning (EXIT_SUCCESS). Den generelle form for exit (0) -funktionen er: -


ugyldig exit (int return_code);

Her er den formelle parameter “return_code” den værdi, der returneres til opkaldsfunktionen. Returen_code er altid af heltalstype, da den værdi, der returneres til den opkaldsfunktion, enten er nul eller en ikke-nul-værdi. Udgangen (0) er en standardbiblioteksfunktion, hvis vi bruger exit (0) i programmet, skal vi bruge header-filen .
Lad os forstå exit (0) med et eksempel:

#omfatte // standardbiblioteksfunktion int main () {FILE * ptrFile; ptrFile = fopen ("myfile.txt", "r"); // åbne filen i read read mode hvis (ptrFile == NULL) {cout << "Fejl ved åbning af fil"; udgang (1); // skiftevis kan du bruge exit (EXIT_FAILURE)} exit (0); // skiftevis kan du bruge exit (EXIT_SUCCESS)}

I koden ovenfor forsøger vi at åbne en fil med navnet “myfile.txt”. Vi havde oprettet en markør til filen “myfile.txt”. Hvis filen "myfile.txt" findes, peger markøren på den fil, der er adresse, og exit (0) udfører rapportering af operativsystemet om, at filen er åbnet. Hvis filen ikke er til stede, vil markøren til filen “myfile.txt” nu indeholde NULL og exit (1) får udført rapportering af operativsystemet om, at filen ikke åbnes på grund af fejl eller noget.


Definition af exit (1)

Funktionsafslutningen (1) er også et springangivelse af C ++. Udgangen (1) afslutter også programmet, men unormalt. Udgangen (1) rapporterer operativsystemet om, at programmet ikke udføres korrekt, eller at det afbrydes mellem udførelsen på grund af den ene eller den anden fejl. Funktionen exit (1) er defineret i standardbiblioteksfunktionen, i tilfælde af at du bruger exit (1) i dit program, skal du specifikt nævne header-filen øverst i programmet.
Makroen til returkode “1” er “EXIT_FAILURE”, så den kan skrives på en måde “exit (EXIT_FAILURE)”.
Lad os nu forstå exit (1) -funktionen ved hjælp af programmet.

// pop elementet øverst på stakken int pop (int stack_name, int størrelse, int Top) {if (Top == - 1) {cout << "stack is underflow"; exit (1); } andet {int s = s; Top--; vender tilbage); }}

Her defineres funktionen til at pope elementet øverst i stakken, hvis toppen af ​​stakken viser sig at være tom, dvs. toppen er -1. Derefter afsluttes ikke opgaven med at poppe det øverste mest element i stakken ud, da stakken er tom, så returnerer vi exit (1). Det indikerer, at popfunktionens opgave ikke er afsluttet. Derfor afsluttes henrettelsen unormalt.

  1. Den eneste return_code, der viser, at programmet er succesrig, er “0”. Til rapportering af unormal afslutning af programmet, kan vi bruge enhver anden værdi end "0", dvs. vi kan bruge "1", "2", "3" ... det betyder, at en værdi, der ikke er nul, angiver unormal afslutning af programmet.
  2. En makro kan også bruges i stedet for return_code. Som på stedet "0" kan du bruge "EXIT_SUCCESS", mens du i stedet for "1" kan bruge "EXIT_FAILURE".

Lighed:

  1. Både exit (0) og exit (1) er springangivelser fra C ++.
  2. Både exit (0) og exit (1) bruges til at afslutte programmet.
  3. Både exit (0) og exit (1) er defineret under header-filen.
  4. Både exit (0) og exit (1) rapporterer status for programmets afslutning til operativsystemet.

Bemærk:

Hvis exit () -funktionen ikke returnerer noget, betyder det, at den ikke ønsker at afsløre status for programmets afslutning til operativsystemet.

Konklusion:

For at rapportere status for programmets afslutning bruger man en exit () -funktion. En exit (0) afslører for operativsystemet, at programmets opgave er fuldført. En exit (1) afslører, at programmets opgave ikke er afsluttet, og programudførelsen afbrydes unormalt.