C語言中 int main(int argc,char *argv[])的兩個參數詳解
argc是命令行總的參數個數;
argv[]是argc個參數,其中第0個參數是程序的全名,以后的參數。命令行后面跟的用戶輸入的參數。
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[]是一個字符數組,其大小是int argc,主要用于命令行參數 argv[] 參數,數組里每個元素代表一個參數;
比如你輸入
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].他通常指向程序中的可執行文件的文件名。在有些版本的編譯器中還包括程序
文件所在的路徑。
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
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
新聞熱點
疑難解答
圖片精選