main()函数返回值?
有人请告诉我’C’语言的main()函数返回其值的位置?
C的main
函数返回一个int … int执行它的程序(父进程,如果你愿意)作为退出状态代码。
具体来说,在大多数操作系统上,0退出代码表示正常运行(没有实际错误),非零表示存在问题,程序必须exception退出。
如果main()函数用作程序的退出状态代码,则返回值。
在shell中,您可以使用$?获取程序的退出状态,例如:
./prog exit_status=$?
从C99标准:
5.1.2.2.3程序终止
1如果
main
函数的返回类型是与int
兼容的类型,则从初始调用到main
函数的返回等同于调用exit
函数,其中main
函数返回的值作为其参数;
然后
7.20.4.3
exit
function5最后,控制权返回到主机环境。 如果status的值为零或
EXIT_SUCCESS
,则返回状态成功终止的实现定义forms。 如果status的值为EXIT_FAILURE
,则返回状态为不成功终止的实现定义forms。 否则返回的状态是实现定义的。
简而言之, main
的返回值以实现定义的forms返回到主机环境。
main
function是libery在任何可能的时刻返回它的值。 你只需写:
return my_return_value;
这是游戏结束。
一般声明是: Function向主机环境返回一个值。
所以main()会将值返回给托管该代码或OS的任何程序或shell。
返回值0被视为成功执行