Main() 傳回值 (C# 程式設計手冊)
更新:2007 年 11 月
Main 方法可以屬於型別 void:
static void Main()
{
//...
}
它也可以傳回 int:
static int Main()
{
//...
return 0;
}
如果不使用 Main 的傳回值,傳回 void 所使用的程式碼會較為簡單。不過,若傳回整數,可以讓程式將狀態資訊與其他叫用可執行檔的程式或指令碼建立關聯。在下列程式碼中,即示範使用 Main 的傳回值。
範例
在下列程式碼中,會使用批次檔執行程式並測試 Main 函式的傳回值。在 Windows 中執行程式時,任何從 Main 函式傳回的值都會儲存到名為 ERRORLEVEL 的環境變數中。藉由檢查 ERRORLEVEL 變數,批次檔就能判斷執行的結果。一般來說,傳回值為零表示執行成功。下面是一個相當簡單的程式,會從 Main 函式傳回零。
class MainReturnValTest
{
static int Main()
{
//...
return 0;
}
}
由於這個範例使用批次檔,因此最好從命令列編譯這段程式碼,如 HOW TO:設定環境變數所示。
接著,會使用批次檔來叫用上面程式碼範例所產生的可執行檔。由於程式碼傳回零,因此批次檔會報告成功,但如果變更上面的程式碼,改成傳回非零的值,然後再經重新編譯,則後續執行批次檔時將表示失敗。
rem test.bat
@echo off
MainReturnValueTest
@if "%ERRORLEVEL%" == "0" goto good
:fail
echo Execution Failed
echo return value = %ERRORLEVEL%
goto end
:good
echo Execution Succeded
echo return value = %ERRORLEVEL%
goto end
:end
範例輸出
Execution Succeded
return value = 0
請參閱
工作
HOW TO:使用 foreach 存取命令列引數 (C# 程式設計手冊)