成功完成程序后返回操作系统的正确值是多少?

时间:2011-08-31 10:27:02

标签: c++

成功完成程序后返回操作系统的正确值是什么

2 个答案:

答案 0 :(得分:6)

return EXIT_SUCCESS;

来自main()函数。

或者,std::exit(EXIT_SUCCESS)来自程序中的任何位置(如果你有多个线程/进程,它会变得更复杂)。

请注意,在大多数平台(尤其是POSIX)上,EXIT_SUCCESS的值为0。因此,return 0exit(0)通常也可以正常运作。

答案 1 :(得分:5)

成功时,main()函数应返回0

如果您致电exit(),则可以使用0或宏EXIT_SUCCESS进行呼叫。来自FDIS,18.5.8,关于void exit(int status)

  

如果status为零或EXIT_SUCCESS,则返回状态成功终止的实现定义形式。

要解释从main返回零,这里是3.6.1.5:

  

main中的return语句具有离开main函数(销毁具有自动存储持续时间的任何对象)并使用返回值作为参数调用std :: exit的效果。如果控件到达main的末尾而没有遇到return语句,则效果是执行return 0;