Meinst du, dass Sie testen möchten, dass die folgende 0 zurückgibt?
int main() {
int rc = doSomething();
return rc;
}
Sie können es wie folgt tun:
int main() {
int rc = doSomething();
std::cout << rc << "\n"; // Just print it out before returning
return rc;
}
Aber es ist besser, den Rückgabewert in der Schale zu überprüfen, von wo aus Sie Ihre Anwendung ausführen:
Unter UNIX/Linux (in Schale):
> ./my_app
> echo $?
0
Unter Windows (in Eingabeaufforderung):
> my_app.exe
> echo %ERRORLEVEL%
Beachten Sie, dass in C++ Sie sind nicht erlaubt, den Anruf zu main()
oder rufen Sie es selbst abzufangen.
3.6.1 Hauptfunktion
Die Funktion main
darf nicht innerhalb eines Programms verwendet werden.
Sie sollten also nicht versuchen, den main()
Aufruf umbrechen und seinen Rückgabewert drucken. Selbst wenn das funktioniert, wäre es nicht portabel (ganz zu schweigen davon, dass Sie Ihre Anwendung sogar zweimal ausführen).
Benennen Sie 'main()' in 'notmain()' um. Fügen Sie eine neue 'main()' -Funktion hinzu, die 'notmain()' aufruft und den zurückgegebenen Wert ausgibt. –
Sie entscheiden den Rückgabewert, nicht den Compiler. Außerdem ist es untraditionell und unheimlich, 'main()' –
'echo $?' Aus der Shell zu nennen, dient Ihnen normalerweise gut –