Arc*_*hit 27 c program-entry-point
谁能告诉我之间的差异int main()和int main(void)?为什么它们都工作,默认参数是int main()什么?
bma*_*ies 12
一般情况下没有区别.这不是'main()'的默认参数,因为它根本没有参数.
这是不寻常的情况.如果您自己编写了对main的调用,那么()将允许您传递任何您喜欢的参数,同时(void)会强制您将其传递给none.但是,对于99.99999999%的情况而言,这一点都不重要,这是运行时调用以启动程序的主要情况.运行时既不知道也不关心你是否写()或(void).
如果您编写标准代码,int main(int argc, char **argv)您将获得命令行参数.
main()允许您使用任意数量的参数调用main.main(void)强迫你在没有参数的情况下调用main.所以:
main(foo, bar);
Run Code Online (Sandbox Code Playgroud)
很好main()但不是main(void)- 编译器生成错误.
现在,如果你特别询问该计划的切入点,它并没有真正有所作为; 在任何一种情况下,您都不会拥有该程序的参数(argc,argv,envp).
| 归档时间: |
|
| 查看次数: |
29830 次 |
| 最近记录: |