在C ++中,3.6.1主要功能
(3.6.1 / 5)main中的return语句具有离开main函数的效果(销毁具有自动存储持续时间的任何对象)和 以返回值作为参数调用exit。 如果控制到达 main的结尾没有遇到return语句,效果是 执行返回0;
我可以在C99中执行以下操作而不返回0吗?
int main() { }
答案 0 :(得分:13)
是,从C99开始,如果}
的返回类型与main
兼容,则在主要结束时返回int
0。
5.1.2.2.3程序终止
如果
main
函数的返回类型是与int兼容的类型,则从初始调用到main
函数的返回等同于使用值调用exit
函数由main
函数返回作为其参数; 11)到达终止}
函数的main
返回值0.如果返回类型不是与int
兼容,未指定返回到主机环境的终止状态。
答案 1 :(得分:6)
是的,C99标准说(§5.1.2.2.3):
到达终止
}
函数的main
返回值0.