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].他一般指向程序中的可執行文件的文件名。在有些版本的編譯器中還包括程序
文件所在的路徑。
-------------------------------------------------------------------------調試
好了,解釋完這個。就有人問了,在調試的時候怎麼輸入參數呢,參數文件不在同一個文件夾下面怎麼辦?ci
其實很簡單的就能夠處理了,我提供兩種方法:編譯器
第一種:編譯
無需調試的狀況:test
直接用dos命令進入到***.exe目錄下而後輸入: ***.exe pra1 pra2gc
第二種:程序
須要調試的狀況:
i.先選擇項目-〉右鍵-〉屬性
ii.調試 -〉命令行參數
在命令行參數裏面輸入命令行參數便可。
須要注意的是,不須要像第一種那樣樣輸入***.exe了。只須要輸入 pra1 pra2 ,中間用空格隔開。