简而言之,我正在使用Microsoft Visual Studio 2012,使用C++编程.我的主要方法有一些while(1)重复的代码,永远不会离开循环.
Microsoft Visual Studio允许我在没有main方法返回值的情况下进行编译,即使它已声明int main(int argc, char** argv).这是其他编译器的标准,还是Microsoft Visual Studio的"功能"?
我意识到我永远不会得到返回值的代码,但是我应该只返回0; 最后呢?
按照标准,mainC++中的函数隐式返回0,即使其中没有return语句.
确切的参考(来自n3797):3.6.1.5
return语句
main具有离开main函数(销毁具有自动存储持续时间的任何对象)并std::exit使用返回值作为参数进行调用的效果.如果控制到达main的末尾而没有遇到return语句,则效果就是执行
return 0;