main()函数返回值?

时间:2011-01-27 16:19:49

标签: c

任何人都可以告诉我'C'语言的main()函数返回其值的位置?

5 个答案:

答案 0 :(得分:8)

C的main函数返回一个int ... int执行它的程序(父进程,如果你愿意)作为退出状态代码。

具体来说,在大多数操作系统上,0退出代码表示正常运行(没有实际错误),非0表示存在问题,程序必须异常退出。

答案 1 :(得分:4)

如果main()函数用作程序的退出状态代码,则返回值。

在shell中,您可以使用$?获取程序的退出状态,例如:

./prog
exit_status=$?

答案 2 :(得分:2)

来自C99标准:

  

5.1.2.2.3程序终止

     

1如果main函数的返回类型是与int兼容的类型,则从初始调用到main函数的返回等同于调用exit使用main函数返回的值作为参数的函数;

然后

  

7.20.4.3 exit功能

     

5最后,控制权返回给主机环境。如果status的值为零或EXIT_SUCCESS,则返回状态成功终止的实现定义形式。如果状态值为EXIT_FAILURE,则返回状态不成功终止的实现定义形式。否则返回的状态是实现定义的。

简而言之,main的返回值以实现定义的形式返回给主机环境。

答案 3 :(得分:0)

main函数可随时在其喜欢的任何时刻返回其值。你只需写:

return my_return_value;

这是游戏结束。

答案 4 :(得分:0)

一般声明是:函数返回一个值给主机环境。

因此main()会将值返回给托管该代码或操作系统的任何程序或shell。

返回值0被视为成功执行