Empfohlen, 2024

Tipp Der Redaktion

Unterschied zwischen Ausgang (0) und Ausgang (1)

Exit (0) und Exit (1) sind die Sprunganweisungen von C ++, mit denen die Steuerung aus einem Programm herausspringt, während das Programm ausgeführt wird. Beide Funktionen, exit (0) und exit (1), werden zum Beenden des Programms verwendet, es gibt jedoch einen Hauptunterschied zwischen exit (0) und exit (1). Der Exit (0) zeigt den erfolgreichen Abbruch des Programms und der Exit (1) zeigt den abnormalen Abbruch des Programms.

Lassen Sie den Unterschied zwischen Ausgang (0) und Ausgang (1) mit Hilfe der Vergleichstabelle untersuchen.

Vergleichstabelle

Basis zum VergleichAusfahrt (0)Ausfahrt (1)
BasicMeldet das Betriebssystem über die "erfolgreiche / normale" Beendigung / Beendigung des Programms.Meldet das Betriebssystem über die "abnormale" Beendigung des Programms.
SyntaxAusfahrt (0);Ausfahrt (1);
Zeigt anEs zeigt an, dass die Aufgabe erfolgreich ausgeführt wurde.Es zeigt an, dass die Aufgabe aufgrund des Fehlers zwischenzeitlich abgebrochen wurde.
MakrosEXIT_SUCCESSEXIT_FAILURE

Definition von exit (0)

Der Funktionsexit (0) ist eine Sprunganweisung von C ++. Es wird verwendet, um das Programm zu beenden oder die Steuerung das Programm verlassen zu lassen. Es meldet dem Betriebssystem den erfolgreichen Abbruch des Programms, der dem Betriebssystem anzeigt, dass die Task des Programms erfolgreich abgeschlossen wurde. Das für den Rückkehrcode "0" verwendete Makro ist "EXIT_SUCCESS". Daher können Sie es als Exit (EXIT_SUCCESS) verwenden. Die allgemeine Form der Exit (0) -Funktion ist:

 void exit (int return_code); 

Hier ist der Formalparameter „return_code“ der Wert, der an die aufrufende Funktion zurückgegeben wird. Der returen_code ist immer vom Typ Integer, da der an die aufrufende Funktion zurückgegebene Wert entweder Null oder ein Wert ungleich Null ist. Der Exit (0) ist eine Standard-Bibliotheksfunktion. Wenn Sie im Programm Exit (0) verwenden, müssen Sie die Header-Datei verwenden.
Lassen Sie uns exit (0) mit einem Beispiel verstehen: -

 #include // Standardbibliotheksfunktion int main () {FILE * ptrFile; ptrFile = fopen ("myfile.txt", "r"); // Datei im schreibgeschützten Modus öffnen if (ptrFile == NULL) {cout << "Fehler beim Öffnen der Datei"; Ausfahrt (1); // alternativ können Sie exit (EXIT_FAILURE) verwenden} exit (0); // alternativ können Sie exit (EXIT_SUCCESS) verwenden} 

Im obigen Code versuchen wir, eine Datei mit dem Namen "myfile.txt" zu öffnen. Wir hatten einen Zeiger auf die Datei "myfile.txt" erstellt. Wenn die Datei "myfile.txt" vorhanden ist, zeigt der Zeiger auf die Adresse dieser Datei, und exit (0) führt das Betriebssystem aus und meldet, dass die Datei erfolgreich geöffnet wurde. Falls die Datei nicht vorhanden ist, enthält der Zeiger auf die Datei "myfile.txt" jetzt NULL, und exit (1) wird ausgeführt und meldet das Betriebssystem, dass die Datei aufgrund eines Fehlers oder etwas nicht geöffnet wird.

Definition der Ausfahrt (1)

Der Funktionsexit (1) ist auch eine Sprunganweisung von C ++. Der Exit (1) beendet das Programm ebenfalls, jedoch nicht normal. Der Exit (1) meldet dem Betriebssystem, dass das Programm nicht erfolgreich ausgeführt wurde oder dass es aufgrund eines Fehlers den Vorgang zwischenzeitlich abgebrochen hat. Die Funktion exit (1) ist in der Standard-Bibliotheksfunktion definiert. Wenn Sie in Ihrem Programm exit (1) verwenden, müssen Sie die Header-Datei am Anfang des Programms angeben.
Das Makro für den Rückkehrcode "1" ist "EXIT_FAILURE". Es kann also auf eine Art "exit (EXIT_FAILURE)" geschrieben werden.
Lassen Sie uns nun die Funktion exit (1) mit Hilfe des Programms verstehen.

 // pop das Element am oberen Rand des Stapels int pop (int stack_name, int size, int Top) {if (Top == - 1) {cout << "stack is underflow"; Ausfahrt (1); } else {int s = s [Top]; Oben--; kehrt zurück); }} 

Hier wird die Funktion definiert, um das Element am oberen Rand des Stapels zu platzieren, wenn festgestellt wird, dass der obere Rand des Stapels leer ist, dh der obere Wert ist -1. Dann wird die Aufgabe, das oberste Element des Stapels zu entfernen, nicht erfolgreich abgeschlossen, da der Stapel leer ist, und wir kehren zum Ausgang zurück (1). Es zeigt an, dass die Aufgabe der Pop-Funktion nicht abgeschlossen wurde. Daher wird die Ausführung abnormal beendet.

Hauptunterschiede zwischen Ausgang (0) und Ausgang (1)

  1. Der einzige return_code, der die erfolgreiche Beendigung des Programms anzeigt, ist "0". Für die Meldung eines abnormalen Abbruchs des Programms können wir einen anderen Wert als „0“ verwenden, dh „1“, „2“, „3“. Dies bedeutet, dass ein Wert ungleich Null einen abnormalen Abbruch des Programms bedeutet.
  2. Anstelle des return_codes kann auch ein Makro verwendet werden. An Stelle von "0" können Sie beispielsweise "EXIT_SUCCESS" verwenden, während Sie anstelle von "1" "EXIT_FAILURE" verwenden können.

Ähnlichkeit:

  1. Exit (0) und exit (1) sind die Sprunganweisungen von C ++.
  2. Mit exit (0) und exit (1) wird das Programm beendet.
  3. Sowohl exit (0) als auch exit (1) werden in der Header-Datei definiert.
  4. Sowohl exit (0) als auch exit (1) melden den Status der Beendigung des Programms an das Betriebssystem.

Hinweis:

Wenn die exit () - Funktion nichts zurückgibt, bedeutet dies, dass sie dem Betriebssystem den Status der Beendigung des Programms nicht mitteilen möchte.

Fazit:

Um den Status der Beendigung des Programms zu melden, verwendet man eine exit () - Funktion. Ein Exit (0) zeigt dem Betriebssystem an, dass die Task des Programms erfolgreich abgeschlossen wurde. Ein Exit (1) zeigt, dass die Task des Programms nicht abgeschlossen ist und die Programmausführung abnormal abgebrochen wird.

Top