Ich schreibe ein Test-Framework und in main() gebe ich die Anzahl der fehlgeschlagenen Tests zurück. Zum Beispiel:Kann der Exit-Code eines Prozesses für kleine Werte überlaufen?
int main() {
int failedTests = runTests();
return failedTests;
}
Also kann dieser "int" Überlauf? Kann ich %ERROR_LEVEL%
als == 0
erhalten, wenn ich tatsächlich etwas anderes als 0 zurückgegeben habe? Kommt es auf das Host-Betriebssystem an? Was sind die üblichen Maximalwerte? Kann ich sicher sein, dass eine Ganzzahl < 32768 (2^16 - ein kurzer) immer passt?
EDIT:
Ich habe sys.exit
Probleme mit Python hatte, die den Bereich von 0-127 verwendet (fast) immer so bin ich vorsichtig jetzt
'% ERROR_LEVEL%' gilt das nicht für eine Windows 'cmd' Shell? Für 'bash' verwendest du' $? 'IIRC. –
@ πάνταῥεῖ ja - meine Frage ist für alle Plattformen - jede Information ist nützlich – onqtam
Wenn Sie den letzten Rückgabewert des Programms in bash oder ähnlichem bekommen wollen, benutzen Sie '$?', Das ist korrekt. – Leandros