【发布时间】:2014-04-18 10:30:36
【问题描述】:
我见过很多具有int main() 或void main() 的程序。我知道两者都被用作程序的起点。我只是对何时使用一种而避免另一种感到困惑。如果您能向我解释一下,我将不胜感激。
【问题讨论】:
我见过很多具有int main() 或void main() 的程序。我知道两者都被用作程序的起点。我只是对何时使用一种而避免另一种感到困惑。如果您能向我解释一下,我将不胜感激。
【问题讨论】:
在当前的 ISO 标准中,它不会改变任何东西,使用与您合作的其他开发人员所期望的内容。 (感谢 Lundin 提醒我这一点)
对于 ANSI C,int main 表示您将以 return 0; 结束您的程序(或其他值,0 是“一切正常”的标准)。
void main 将允许您跳过该行,and have some other effect,基本上,取决于编译器,您可能无法访问 argc 和 argv,因为 main 接受 0 个参数。
虽然它没有做很多坏事,但我认为最好使用int main,所以你不必担心副作用。这也是 ANSI C 中的规范。
【讨论】:
int main (void) 中的return 语句。 1999年也已经到来了!新的 ISO 标准。或者好吧,它是 18 年前的新东西……
int main() 只是在执行代码后将结果代码返回给操作系统。例如,返回0 通常意味着成功运行,返回任何其他内容意味着可能有错误。除了调试和错误报告之外,从主函数返回 int 确实没有多大用处。当然,void 表示您不返回任何东西。祝你好运!
【讨论】: