【发布时间】:2014-03-15 19:48:26
【问题描述】:
在我关于 C 的书中,作者通常将main() 格式化为:
main()
{
/* Some code */
return;
}
但有时,他会像这样格式化main():
main()
{
/* Some code */
return 0;
}
有什么区别?有关系吗?
【问题讨论】:
-
-
返回 0;意味着程序成功退出并且至少在(unix)中退出,而 return 只是终止程序而不管它的状态。在 void 函数中,它是一个出口点
-
告诉我们它是什么书,这样我们就可以确保没有人买它,它是在教授非标准做法。
-
我正在使用 C By Example。它来自 80 年代的某个地方,所以如果标准发生变化,我不会感到惊讶。它甚至不谈论 GUI 或图形。
-
旧版本的
C允许像这样声明main。永远不要用新代码编写它。 (一个罕见的例外是 C 标准允许实现指定可接受的替代声明main,而嵌入式 C 实现可能会这样做。)