这个问题在这里已经有了答案:




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/

10-13 08:19