请问在 C 语言中,main() 函数的返回值应该是返回到哪里呢?
请问在 C 语言中,main() 函数的返回值应该是返回到哪里呢?
C语言的main
函数返回一个整数...这个整数作为退出状态码传递给执行它的程序(也就是父进程)。
通常情况下,在大多数操作系统中,退出状态码0表示程序正常运行(没有真正的错误),非零则表示出现问题,程序不得不异常退出。
如果使用main()函数作为程序的退出状态码,则返回值是什么。
在shell中,您可以使用$?获取程序的退出状态,例如:
./prog
exit_status=$?
根据C99标准:
5.1.2.2.3 程序终止
1.如果
main
函数的返回类型与int
兼容,从初始调用main
函数返回相当于使用main
函数返回的值调用exit
函数;
然后
7.20.4.3
exit
函数5.最后,控制权返回给主机环境。如果状态值为零或
EXIT_SUCCESS
,则以实现定义的形式返回状态 成功终止。如果状态值为EXIT_FAILURE
,则以实现定义的形式返回状态 不成功终止。否则返回的状态是实现定义的。
简而言之,main
的返回值以实现定义的形式返回到主机环境中。
main
函数可以在任何时候返回其值。您只需编写:
return my_return_value;
游戏结束了。