argv是字符串数组,存的是参数,定义为char**或者char*
argv[]
比如你编译好的程序为my.exe
在命令行执行
my.exe
1
2
3
那argc就是4,argv[0]是"my.exe",argv[1]是"1",argv[2]是"2",argv[3]是"3"
argc: argument counter 参数的个数计数器,其实是命令行里面用空白隔开的字符串个数argv: argument vector 参数的数组,就是命令行里面按空白分开的各个字符串存放的数组
argv是指向char*的指针,也就是指向字符指针的指针
int
argc
是参数个数
主要用于命令行方式启动的应用程序,或者带参数启动的应用程序
再详细一些:
argc
是参数的数目,第一个参数是程序名,所以argc至少有1,如果argc大于1的话,说明有参数输入,
argv是具体参数列表,例如argv[1]是第一个参数的名字,argv[2]是第二个参数的名字
c:\myopenfile.exe
filename
openmethod
表示启动myopenfile程序,第一个参数是打开的文件名,第二个参数是打开方式
相应的,argc=3,argv[1]=filename,argv[2]=openmethod