我让这个程序使用命令行给出的值 10,20,30 执行。
int main(int argc , char **argv)
{
printf("\n Printing the arguments of a program \n");
printf("\n The total number of arguments in the program is %d",argc);
while(argc>=0)
{
printf("%s ",argv[argc]);
argc--;
}
return 0;
}
输出是
程序中的参数总数为 4(null) 30 20 10 ./a.out
那(空)从哪里来的??
最佳答案
argv[0]
(在可能的范围内)应该是标识正在运行的程序的某种东西。 argv[1]
到argv[argc-1]
是在命令行上实际输入的参数。 argv[argc]
必须是空指针(第5.1.2.2.1/2节)。
关于C 中的命令行参数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3371886/