为什么在这个例子中使用了返回-1?

时间:2014-12-15 06:38:36

标签: c# guid

 static int Main(string[] args)
        {
            Guid obj = Guid.NewGuid();

            Console.WriteLine("New Guid is " + obj.ToString());
            Console.ReadLine();
            return -1;
        }

有人可以告诉我为什么return -1在这里被使用了,它意味着什么?

3 个答案:

答案 0 :(得分:4)

Main方法可以返回void

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

它还可以返回int

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

如果未使用Main的返回值,则返回void可以使代码稍微简单。
但是,返回integer可使程序与状态信息进行通信调用可执行文件的其他程序或脚本 阅读更多here

答案 1 :(得分:2)

我当然无法告诉你为什么选择了-1,但一般来说,这个返回值会被发送到调用应用程序。它被称为退出代码。他们现在通常不会在应用程序中使用它们,因为它们实际上没用,但是在白天 - 实际上仍然在这种情况下 - 它们被用来传达成功或失败(或其他)控制台应用程序。

例如,我可能编写一个进行网络调用的程序,如果调用成功,则返回0,如果没有安装NIC,则随机返回12。这样,如果其他一些程序正在使用我的EXE,它可以理解调用是否成功,而不必不可靠地解析一些输出流。

大多数现代应用程序都具有static void Main个功能,因为此工作流程在大多数情况下对最终用户并不有用。我们现在使用GUI来炫耀"执行期间出错。"这并不是说它们在某些情况下不是很有用,显然,原因与以前一样,但是如果你开始一个程序,结果一般都没有被捕获。双击一个图标,因此在大多数情况下它会被丢弃。

答案 2 :(得分:0)

main的返回值是程序的退出代码。呼叫者可以检查并对其做出反应。在Windows上,常见模式是在程序成功时使用0,在错误条件下使用不同的正整数。