argc 是argument count的缩写表示传入main函数中的参数个数,包括这个程序本身

argv 是 argument vector的缩写表示传入main函数中的参数列表,其中argv[0]表示这个程序的名字

在上面两个名词的解释中提到“这个程序”,所谓的“这个程序”就是包含main函数的程序。可能这样说还是不太能理解,不妨用一个例子来说明一下什么是“这个程序”。

代码如下(test.c文件并编译链接形成test.exe(linux下生成test)可执行文件):

#include <stdio.h>
#include <stdlib.h>
int main(int argc, char const *argv[])
{
	printf("%s\n",argv[0]);
	return 0;
}

结果如下:
在这里插入图片描述
这个例子展示了“这个程序”和argv[0]的含义。
那么接下来看一下argc和argv的使用,代码示例如下:

#include <stdio.h>
#include <stdlib.h>
int main(int argc, char const *argv[])
{
	printf("the number of command line parameters is %d!\n",argc );
	for (int i = 0; i < argc; ++i)
	{
		printf("argv[%d] is %s\n",i,argv[i]);
	}
	return 0;
}

结果展示如下:
在这里插入图片描述
argc表示argv中参数的个数。

https://zhuanlan.zhihu.com/p/267822985

Logo

更多推荐