Share via


Main()-Rückgabewerte (C#-Programmierhandbuch)

Die Main-Methode kann void zurückgeben.

static void Main()
{
    //...
}

Sie kann außerdem int zurückgeben:

static int Main()
{
    //...
    return 0;
}

Wenn der Rückgabewert von Main nicht verwendet wird, kann der Code durch das Zurückgeben von void geringfügig vereinfacht werden.Das Zurückgeben einer ganzen Zahl ermöglicht es dem Programm jedoch, Statusinformationen an andere Programme oder Skripts weiterzugeben, von denen die ausführbare Datei aufgerufen wird.Im folgenden Beispiel wird gezeigt, wie auf den Rückgabewert von Main zugegriffen werden kann.

Beispiel

In diesem Beispiel wird eine Batchdatei verwendet, um ein Programm auszuführen und den Rückgabewert der Main-Funktion zu testen.Beim Ausführen eines Programms unter Windows wird ein evtl. von der Main-Funktion zurückgegebener Wert in einer Umgebungsvariablen mit dem Namen ERRORLEVEL gespeichert.Batchdateien können das Ergebnis der Ausführung bestimmen, indem sie die ERRORLEVEL-Variable überprüfen.In der Regel signalisiert ein Rückgabewert von 0 (null) die erfolgreiche Ausführung.Im folgenden Beispiel wird mit einem einfachen Programm der Wert (null) von der Main-Funktion zurückgegeben.Der Wert 0 (null) gibt an, dass das Programm erfolgreich ausgeführt wurde.Speichern Sie das Programm unter den Namen MainReturnValTest.cs.

// Save this program as MainReturnValTest.cs.
class MainReturnValTest
{
    static int Main()
    {
        //...
        return 0;
    }
}

Da in diesem Beispiel eine Batchdatei verwendet wird, empfiehlt es sich, den Code von einer Eingabeaufforderung aus zu kompilieren.Folgen Sie den Anweisungen in Gewusst wie: Festlegen von Umgebungsvariablen, um Befehlszeilenbuilds zu aktivieren, oder verwenden Sie die Visual Studio-Eingabeaufforderung im Menü Start unter Visual Studio Tools.Navigieren Sie von der Eingabeaufforderung zum Ordner, in dem Sie das Programm gespeichert haben.Mit dem folgenden Befehl wird MainReturnValTest.cs kompiliert und die ausführbaren Datei MainReturnValTest.exe erzeugt.

csc MainReturnValTest.cs

Erstellen Sie anschließend eine Batchdatei, um MainReturnValTest.exe auszuführen und das Ergebnis anzuzeigen.Fügen Sie den folgenden Code in eine Textdatei ein, und speichern Sie diese als test.bat in dem Ordner, der die Dateien MainReturnValTest.cs und MainReturnValTest.exe enthält.Führen Sie die Batchdatei aus, indem Sie test an der Eingabeaufforderung eingeben.

Da 0 (null) vom Code zurückgegeben wird, gibt die Batchdatei eine Erfolgsmeldung aus.Wenn Sie jedoch MainReturnValTest.cs ändern, um einen Wert ungleich 0 (null) zurückzugeben, und dann das Programm erneut kompilieren, wird bei der folgenden Ausführung der Batchdatei ein Fehler gemeldet.

rem test.bat
@echo off
MainReturnValTest
@if "%ERRORLEVEL%" == "0" goto good

:fail
    echo Execution Failed
    echo return value = %ERRORLEVEL%
    goto end

:good
    echo Execution succeeded
    echo Return value = %ERRORLEVEL%
    goto end

:end

Beispielausgabe

Execution succeeded

Return value = 0

Siehe auch

Aufgaben

Gewusst wie: Anzeigen von Befehlszeilenargumenten (C#-Programmierhandbuch)

Gewusst wie: Zugreifen auf Befehlszeilenargumente mithilfe von foreach (C#-Programmierhandbuch)

Konzepte

C#-Programmierhandbuch

Main() und Befehlszeilenargumente (C#-Programmierhandbuch)

Weitere Ressourcen

C#-Referenz