1. int argv
argv 是 argument vector的缩写,
表示传入main函数的参数序列或指针,
并且第一个参数argv[0]一定是程序的名称,
并且包含了程序所在的完整路径,
所以确切的说需要输入的main函数的参数个数是argc-1个。
例:
./main.out 的 argv=1
./main.out -l 的 argv=2
./main.out -l-a 的 argv=3
2. char* argc [ ]
*argv[ ]: 指针数组,
用来存放指向你的字符串参数的指针,
每一个元素指向一个参数。
其中argv[0] 指向程序运行的全路径名,
argv[1] 指向在DOS命令行中执行程序名后的第一个字符串,
argv[2] 指向执行程序名后的第二个字符串,
argv[argc]为NULL。
例:
#include <stdio.h>
int main(int argv,char* argc[])
{
printf("argv is %d\n",argv);
int i;
for(i=0;i<argv;i++)
{
printf("argc[%d] is %s\n",i,argc[i]);
}
return 0;
}
运行
./main3.out -l -a
结果
argv is 3
argc[0] is ./main3.out
argc[1] is -l
argc[2] is -a