【发布时间】:2011-05-17 15:19:51
【问题描述】:
不久前,我参加了有关 c++ 算法的课程。我们在课堂上使用了 Visual Studio,有时在编写 main 函数时,我们会将其声明为 void main() { 而不是 int main(){return 0;} 。这很好用,虽然我知道通常你应该使用 int。就在最近,我尝试从 linux 的 netbeans 类中编译相同的代码。这一次,它不会接受将 main 函数声明为 void。为什么 g++ 编译器需要将 main 函数声明为 int?对不起,如果这是一个愚蠢的问题。
【问题讨论】:
-
这在What is the proper declaration of main?中有讨论(那篇帖子里有很多信息。总而言之,C和C++中
main()的返回类型必须是int。Visual C++发生支持main(),返回类型为void,作为非标准的、实现提供的语言扩展)。