main()的参数是什么?

Dev*_*ven 18 c arguments

每次我用Xcode创建一个项目(标准命令行实用程序)时,我的main函数开始看起来像这样:

int main(int argc, const char * argv[])
Run Code Online (Sandbox Code Playgroud)

括号中的所有内容是什么?为什么要使用这个而不仅仅是 int main()

nos*_*nos 43

main接收启动程序时传递给它的参数数量和参数,以便您可以访问它.

argc包含参数的数量,argv包含指向参数的指针.argv [argc]始终是NULL指针.参数通常包括程序名称本身.

通常,如果您运行您的程序,如 ./myprogram

  • argc是1;
  • argv [0]是字符串"./myprogram"
  • argv [1]是一个NULL指针

如果你运行你的程序 ./myprogram /tmp/somefile

  • argc是2;
  • argv [0]是字符串"./myprogram"
  • argv [1]是字符串"/ tmp/somefile"
  • argv [2]是一个NULL指针


Sac*_*hag 2

这些用于使用命令行中的参数 -

argc 包含命令行上的参数数量(包括程序名称),argv 是实际参数列表(表示为字符串)。