int main(int argc,char *argv[])
{
for(inti = 0;我& ltargci++)
{
cout & lt& ltargv[I]& lt;& lt\ t ';//
}
return0
}
/*
Int argc,char **argv用於在運行時將命令行參數傳遞給主程序。
Argc -命令行參數的總數,包括可執行程序名。
Argv[i] -第I個參數。
Argv[0] -可執行程序名。
*/
關於帶參數的主函數的網絡集合:
Int main(int argc,char **argv)這裏**argv的意思...
它用於傳遞參數。如果您編譯的文件名是a.exe,您可以在命令提示符下使用a.exe12。
34向程序傳遞參數,那麽兩個參數將被傳遞給字符串數組argv。註意,此時實際傳遞了三個參數,第壹個參數是文件名,第二個參數是12,第三個參數是34,argc是參數個數。
Int argc,char **argv用於在運行時將命令行參數傳遞給主程序。
Argc -命令行參數的總數,包括可執行程序名。
Argv[i] -第I個參數。
Argv[0] -可執行程序名。
//例如,運行:
abc.exe
Argc等於1,argv[0]是“abc.exe”。
//例如,運行:
rec.exe 4 5.2
Argc等於3,argv[0]是“rec.exe”,argv[1]是“4”,argv [2]是“5.2”。
如果主函數中有任何內容:
int x;
浮動y;
char s[80];
strcpy(s,argv[0]);//程序名存儲在s中。
sscanf(argv[1]," %d ",& ampx);// x給出值4。
sscanf(argv[2]," %f ",& ampy);// y給出值5.2。
在ANSI-C(C89/C99)中,main()函數有兩種主要形式。
(1) int main(void)
(2) int main(int argc,char *argv[])
(2)也可以寫成int main(int argc,char **argv)。
Argv[argc]空指針(空指針)。
Argc和argv可以使用別名。
此外,還有壹種形式受到制度的限制:
int main(int argc,char *argv[],char *envp[])
前兩個參數與(2)相同,第三個參數envp[]放置環境變量。
這種形式很少使用。
所以嚴格來說,
ANSI-C推薦的帶參數的main()函數只有上面的(2)。
此外,收集了C和C++中的幾種常見形式:
(1) main()
(2) int main()
(3) int main(void)
⑷int main(int,char**)
(5) int main(int,char*[])
(6) int main(int argc,char **argv)
(7) int main(int argc,char *argv[])
(8) int main( int argc,char *argv[],char*envp[])
(9)空心總管(空心)
(1)是(3)的簡稱。不推薦。
(2)是(3)的簡稱。它是C++中的正確形式。
(3)在C和C++中都是正確的形式。推薦使用。(以及默認int的main(void)形式)。
(4)和(5)是壹種沒有參數的寫法。當編譯器級別較高時發出警告。不推薦。
(6)是(7)的另壹種寫法。兩種都可以,看個人喜好。
(7)是帶參數的正確形式。推薦使用。
(8)是壹種很少使用的書寫方法,受到系統的限制。
(9)壹般不認為是正確的寫法。但是用在嵌入式系統中(包括void main()形式)。