这个问题在这里已经有了答案:
9年前关闭。
我正在研究我的 C 技能,我注意到
和
代替
为什么是这样?
最佳答案
如果您要忽略参数列表,使用以下方法是合理且明智的:
int main(void) { ... }
标准祝福这种用法,以及带有参数的用法。如果使用
-Wstrict-prototypes
编译并且不包含 void
,则会收到来自 GCC 的警告,因此我编写了 void
。 C++ 在这里是不同的。至于
return EXIT_SUCCESS;
,总体上似乎没有什么好处;我继续在 return 0;
函数的末尾编写 main()
,即使 C99 允许您在那里省略任何返回(然后它的行为就像您编写 return 0;
一样)。旁白:请注意,第 5.1.2.2.3 节明确指出 C 标准允许实现允许
main()
以外的返回类型 int
(与 C++ 标准不同,C++ 标准明确禁止 int
以外的返回类型)。然而,正如 Jens 正确指出的那样,只有在实现明确记录它被允许的情况下,int
的非 main
返回类型才被允许,并且文档可能会对允许的内容进行限制。关于c - C 中主要函数的样式,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8692120/