Exit Status - wie viele sind vordefiniert
-
Hallo,
ich wollte herausfinden wie viele vordefinierten Exit-Stati es gibt.
Warum das ganze?
Folgendes Beispiel:try { pMyClassMap = new QMap<short,myClass>; } catch (bad_alloc) { cout << "MyClass-Map konnte nicht angelegt werden\n"; ((KAppl*)qApp)->exit(666); }Ich will also bei einem möglichen Programmabbruch ersehen können, an welcher Stelle das Programm abgebrochen wurde. Dies verwirkliche ich mit einem individuellen Exit-Status.
Allerdings funktioniert das ja nur, wenn ich weiß das dieser Exit-Status auf jeden Fall für nichts anderes verwendet wird.MfG
blue in the morning
-
Vordefiniert sind afaik nur EXIT_SUCCESS (0 = Erfolg) und EXIT_FAILURE (Fehler aufgetreten). Aber theoretisch kann ein Programm jeden beliebigen int-Wert ausgeben.
-
Mit Konsoleneingabe
echo $statusbekomme ich ja den Exit Status des letzten Programmabbruchs herraus.
Dieser ist ja bei normalen Programmablauf 0.
Aber wenn ich z.B. ctrl + c beim Ausführen drücke und danach den Status abrufe,
ist er 6. Es gibt also anscheinend mehrere Stati
-
Hast du CStolls Post gelesen?
Du kannst zurückgeben was du willst (wobei der Programmstatus IIRC auf 8 Bits gestutzt wird).
Vordefiniert (in C/C++) sind nur die beiden EXIT_*-Makros. Ansonsten vielleicht mal Google: exit status conventions o.ä. für deine Plattform versuchen...