1
2
3
4
5
6
7
8 |
int main( int argc, char * argv[]) { int i; for (i = 0; i cout< cin>>i; return 0; } |
执行时敲入
1 |
F:\MYDOCU~1\TEMPCODE\D1\DEBUG\D1.EXE aaaa bbb ccc ddd |
输出如下:
1
2
3
4
5 |
F:\MYDOCU~1\TEMPCODE\D1\DEBUG\D1.EXE aaaa bbb ccc ddd |
--------------------------------------------------------------------
char *argv[]是一个字符数组,其大小是int argc,主要用于命令行参数 argv[] 参数,数组里每个元素代表一个参数;
比如你输入
1
2
3
4
5
6
7
8 |
test a.c b.c t.c 则 argc = 4 argv[0] = "test" argv[1] = "a.c" argv[2] = "b.c" argv[3] = "t.c" |
--------------------------------------------------------------------------------------------
argc记录了用户在运行程序的命令行中输入的参数的个数。
arg[]指向的数组中至少有一个字符指针,即arg[0].他通常指向程序中的可执行文件的文件名。在有些版本的编译器中还包括程序
文件所在的路径。
1
2
3
4
5
6
7
8 |
int main( int argc, char ** argv) { int i; for (i=0; i < argc; i++) printf ( "Argument %d is %s.\n" , i, argv[i]); return 0; } |
在OpenCV的编程中经常使用上述main函数的使用方式,
其中argc代表:输入的参数个数
其中argv代表:此可执行文件的存储路径、程序变量
例如:你在D盘下建立了一个工程,并命名为cvshow,同时在此工程下建立了一个名为cvshow的cpp源文件,当执行程序是将在Debug文件夹下生成show.exe可执行文件,当然Debug文件位于工程cvshow下,所以可执行文件show.exe的存储路径为
D:\cvshow\Debug\show.exe,即argv[0]的值
argv[1]、argv[2]、argv[3]一次代表输入变量,变量以空格相隔开
实例:
加入输入变量为:c:\baboon.jpg
那么,argc==1 argv[0]==D:\cvshow\Debug\show.exe argv[1]==c:\baboon.jpg
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!