C++ main函数中的argc和argv的含义和用法
1 argc的含义
argc 是 argument count的缩写,表示传入main函数参数的数量。当我们不传入参数时,argc的值为1,代表程序的名称和包含了程序所在的完整路径。
2 argv的含义
argv 是 argument vector的缩写,表示传入main函数参数序列,当我们不传入参数时,argc的值为1,argv[0]=“程序路径+程序名称”。
char *argv[]是一个指针数组,数组里存放的是地址,在这里实际上是字符串的首地址,所以后面我们在使用argv[i]的时候使用的是第i个字符串的首地址。使用字符串首地址可以代表字符串,所以可以利用argv[i]打印一个字符串。
3 用法
3.1 不输入参数
#include <iostream>
using namespace std;
int main(int argc,char *argv[])
{
for(int i=0;i<argc;i++)
{
cout<<"argument["<<i<<"] is: "<<argv[i]<<endl;
}
system("pause");
return 0;
}
可以看出只含有一个参数,并且参数值为 “程序路径+程序名称” 。
3. 2 传入多个参数
打开命令提示符(win+R),输入cmd。
输入生成的exe文件所在的完整路径,一个简便的方法是把exe文件直接拖入提示符窗口即可,之后输入传入参数,以空格分隔,之后回车。