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

What is the correct value to return to the operating system upon the successful completion of a program?

本文关键字:操作系统 是什么 返回 程序 一个 成功      更新时间:2023-10-16

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

return EXIT_SUCCESS;

从你的main()函数

或者,从程序中的任何地方获取std::exit(EXIT_SUCCESS)(显然,如果您有多个线程/进程,它会变得更复杂)。

注意,在大多数平台上(特别是POSIX), EXIT_SUCCESS的值为0。所以return 0exit(0)通常也可以。

您的main()函数应该在成功时返回0

如果调用exit(),则可以使用0或宏EXIT_SUCCESS调用它。摘自FDIS, 18.5.8,关于void exit(int status):

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

为了解释从main返回零的原因,下面是3.6.1.5:

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