C / C ++中的“ int main()”和“ int main(void)”之间的区别?
有时我们会看到两种主要函数定义。intmain()
和intmain(void)。那有什么区别吗?
在C++中,没有区别。在C语言中,两者也是正确的。但是第二个在技术上更好。它指定函数不接受任何参数。在C语言中,如果未使用参数指定某些函数,则可以不使用任何参数或使用任意数量的参数来调用它。请检查这两个代码。(请记住,这些是在C而非C++中)
示例
#include<stdio.h> void my_function() { //一些任务 } main(void) { my_function(10, "Hello", "World"); }
输出结果
This program will be compiled successfully
示例
#include<stdio.h> void my_function(void) { //一些任务 } main(void) { my_function(10, "Hello", "World"); }
输出结果
[Error] too many arguments to function 'my_function'
在C++中,两个程序都将失败。因此,从中我们可以理解intmain()
可以用C中的任意数量的参数调用。但是intmain(void)不允许任何参数。