我正在使用DevC ++。
- 当我写
void main()
时,编译器说main必须返回int。 - 当我编写
main()
时,编译器不报告任何内容。 - 当写
int main()
时,编译器要求我返回一些东西。
我的问题是没有 int 和 void 的 main() 是什么?为什么编译器对 int main() 和 main() 的行为不同?
在 C 中,这是一个 C89 功能,在 C99 及更高版本中已过时:如果省略返回类型,则隐含int
。在C++中,它是一个编译器扩展,不受语言支持,但某些编译器支持。