gpt4 book ai didi

c++ - 为什么 main 的默认返回值为 0 而不是 EXIT_SUCCESS?

转载 作者:IT老高 更新时间:2023-10-28 21:37:39 27 4
gpt4 key购买 nike

ISO 1998 c++ 标准规定在 main 中不显式使用 return 语句等同于使用 return 0。但是如果一个实现有不同的标准“无错误”代码,例如 -1

为什么不使用标准宏 EXIT_SUCCESS 将被 0-1 或任何其他值替换,具体取决于实现?

C++ 似乎强加了程序的语义,这不是只应描述程序行为方式的语言的角色。此外,“错误”返回值的情况有所不同:只有 EXIT_FAILURE 是标准的“错误”终止标志,没有明确的值,例如“1”。

这些选择的原因是什么?

最佳答案

main() 返回零与您所要求的基本相同。从 main() 返回零不必将零返回到主机环境。

来自 C90/C99/C++98 标准文档:

If the value of status is zero or EXIT_SUCCESS, an implementation-defined form of the status successful termination is returned.

关于c++ - 为什么 main 的默认返回值为 0 而不是 EXIT_SUCCESS?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1188335/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com