以下是什么意思:int main(void) {...} VSint main() {...}?我认为这int main() {...}意味着main不接收任何参数(从命令行),但是:int main(int argc, char *argv[])做。但是什么int main(void) {...} 意思呢?什么是无效主张?我看过这里,但是又有一个不同的问题。
3 回答

慕容森
TA贡献1853条经验 获得超18个赞
在C语言中,在原型中(尽管不是在C ++中),空的参数列表意味着该函数可以接受任何参数(在函数的定义中,它意味着没有参数)。在C ++中,空的参数列表意味着没有参数。在C语言中,要获取无参数,必须使用void
。请参阅此问题以获得更好的解释。

杨__羊羊
TA贡献1943条经验 获得超7个赞
在C ++中,没有区别,两者相同。
两种定义都可以在C语言中使用,但是从技术上讲,使用void的第二种定义在技术上被认为是更好的,因为它明确指出main只能在没有任何参数的情况下调用。在C语言中,如果函数签名未指定任何参数,则意味着可以使用任何数量的参数或不使用任何参数来调用函数。例如,尝试编译并运行以下两个C程序(请记住将文件另存为.c)。
- 3 回答
- 0 关注
- 3682 浏览
添加回答
举报
0/150
提交
取消