这里直接上代码,笔者喜欢在实践中获取答案,这样可以更快理解它们的意思:
test2App.c
#include <stdio.h>
int main(int argc,char *argv[])
{
if(argc==1 || argc>2) {
printf("请输入想要编辑的文件名如:./edit fillen\r\n此时argc==%d",argc);
}
if(argc==2) {
printf("此时argc为%d,编辑(argv[1])为%s\n而argv[0]为%s",argc,argv[1],argv[0]);
}
return 0;
}
在ubuntu终端下的输入命令与运行结果:
由此可见:
当argc为1时,执行的命令为./test2App;
当argc为2时,执行的是第二个命令,在网上查得资料为argc表示命令行的参数个数。
argv[1]为第二个输入的字符串:20220504gz,argv[0]为./test2App
总结:argc 是外部命令参数的个数,argv[] 存放各参数的内容。
ps:编辑名称为“假”,仅为了引入输入第二个命令而已。