更新:2007 年 11 月

Main 方法可以是 void 类型:

C# 复制代码
static void Main()
{
    //...
}

它还可以返回 int

C# 复制代码
static int Main()
{
    //...
    return 0;
}

如果不需要使用 Main 的返回值,则返回 void 可以使代码变得略微简单。但是,返回整数可使程序将状态信息与调用该可执行文件的其他程序或脚本相关。下面的示例演示使用 Main 的返回值。

示例

在此示例中,使用了一个批处理文件来执行程序并测试 Main 函数的返回值。在 Windows 中执行程序时,Main 函数返回的任何值都将存储在名为 ERRORLEVEL 的环境变量中。通过检查 ERRORLEVEL 变量,批处理文件可以确定执行的结果。通常,返回值为零指示执行成功。下面是一个非常简单的程序,其 Main 函数返回零。

C# 复制代码
class MainReturnValTest
{
    static int Main()
    {
        //...
        return 0;
    }
}

由于此示例使用了批处理文件,因此最好从命令行编译这段代码,如 如何:设置环境变量 中所示。

然后,使用批处理文件调用前面的代码示例所生成的可执行文件。由于代码返回零,因此批处理文件将报告成功。但如果前面的代码更改为返回非零值,然后重新编译,则批处理文件的后续执行将指示失败。

 复制代码
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

请参见