📅  最后修改于: 2023-12-03 14:39:37.518000             🧑  作者: Mango
在C/C++中,main()
函数是程序的入口,所有的程序都必须从main()
函数开始,并且在main()
函数结束时结束。但是,main()
函数的参数列表可以有不同的形式,比如int main()
和int main(void)
。下面我们将介绍这两种形式之间的区别。
int main()
int main() {
return 0;
}
int main()
是最常见的main()
函数形式。它表示该函数不需要接受任何参数,并且可以省略return
语句的返回值。这种形式的main()
函数被广泛使用,在大多数编译器中都能够编译通过。但是,在最新的C++标准中已经不建议使用这种形式。
int main(void)
int main(void) {
return 0;
}
在C/C++标准中,void
表示“无类型”,这种形式的main()
函数表示该函数没有任何参数。另外,这种形式的main()
函数不允许省略return
语句的返回值。如果你省略了return
语句的返回值,编译器将会发出警告。
在使用int main()
时,如果省略return
语句的返回值,编译器将会默认返回0
。但是,在使用int main(void)
时,如果省略return
语句的返回值,编译器将会发出警告,并且不会默认返回0
。除此之外,这两种形式是等效的。
在C++11标准中,还可以使用以下形式的main()
函数:
int main(int argc, char** argv) {
return 0;
}
这种形式的main()
函数接受两个参数,argc
表示命令行参数的个数,argv
表示命令行参数的内容。这种形式的main()
函数只有在使用命令行参数时才有意义。