今天的學習,遇到的問題。
1,argc argv[]是什麼意思,爲什麼定義主函數時,要這樣寫
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
argc,argv 用命令行編譯程序時有用。
主函數main中變量(int argc,char *argv[ ])的含義
有些編譯器允許將main()的返回類型聲明爲void,這已不再是合法的C++
main(int argc, char *argv[ ], char **env[ ])纔是UNIX和Linux中的標準寫法。
argc: 整數,用來統計你運行程序時送給main函數的命令行參數的個數
argv[0] 指向程序運行的全路徑名
argv[1] 指向在DOS命令行中執行程序名後的第一個字符串
argv[2] 指向執行程序名後的第二個字符串
...
argv[argc]爲NULL。
**env:字符串數組。env[ ]的每一個元素都包含ENVVAR=value形式的字符
串。其中ENVVAR爲環境變量,value 爲ENVVAR的對應值。