1、(arguments, argument counter(计数个数) 和 argument vector (矢量,带有方向的变量参数,也就是指针)
argc命令行输入参数的个数
int main(int argc, char* argv[])
{
int i;
for (i = 0; i<argc; i++)
cout<<argv[i]<<endl;
cin>>i;
return 0;
}
执行时敲入
F:\MYDOCU~1\TEMPCODE\D1\DEBUG\D1.EXE aaaa bbb ccc ddd
输出如下:
F:\MYDOCU~1\TEMPCODE\D1\DEBUG\D1.EXE
aaaa
bbb
ccc
ddd
char *argv[]是一个元素类型为字符指针的数组,数组中每一个元素都是字符指针(存放前边的argc个数所在的地址,只不过每一个参数的地址被分配了1个字节的存储空间),但是参数本身数值的大小看前边int argc,说明每一个参数的内容被分配了4个字节空间,因为是指针类型,所以数组里每个元素存放的是相应参数的地址,所以也就能指向每个参数,这也是指针原本的作用;
比如你输入
test a.c b.c t.c
则
argc = 4