C++ 为什么主函数中没有传递参数?
每当我们在任何代码中定义main()函数时,为什么不在其中传递任何参数呢?调用函数时只传递参数,但这可能只是我们两人在术语上的不同。C++ 为什么主函数中没有传递参数?,c++,c,C++,C,每当我们在任何代码中定义main()函数时,为什么不在其中传递任何参数呢?调用函数时只传递参数,但这可能只是我们两人在术语上的不同。 定义函数时,我们定义形式参数,包括其类型。 如果您从未见过使用参数定义的main(),那么您从未见过可以处理命令行参数的main() 可以处理它们的main()的通常原型是 int main(int argc, char **argv) 或 有关如何使用此功能的示例,请参见 主要语法是 intmain(intargc,char**argv); 其中,argc指
定义函数时,我们定义形式参数,包括其类型。
如果您从未见过使用参数定义的
main()
,那么您从未见过可以处理命令行参数的main()
可以处理它们的main()
的通常原型是
int main(int argc, char **argv)
或
有关如何使用此功能的示例,请参见主要语法是
intmain(intargc,char**argv);
其中,
argc
指传入的命令行参数数量,包括用户调用的程序的实际名称argv
包含实际参数,从索引1
开始。索引<代码> 0代码>代码>程序名。< /P> < P> C++标准认可的是:
C标准认可的变更包括:
还有其他特定于平台的变体,但它们都必须返回int
您似乎只看到过使用第一个版本的
main()
的程序。大多数实际应用程序使用第二版本的main()
。它允许他们处理命令行参数。看一看。显示一些您尝试过的代码。添加最小、完整和可验证的示例()“其中包括程序的实际名称”-通常,但在某些情况下并不总是如此。因此,argv[0]
仅当程序名实际存在时才是程序名。@RemyLebeau不总是相同的吗?你能给我们举几个例子吗?
int main(int argc, char* argv[])
int main () { body }
int main (int argc, char *argv[]) { body }
int main (void) { body }
int main (int argc, char *argv[]) { body }