#include iostream.h
創(chuàng)新互聯(lián)公司專注于永和網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗。 熱誠為您提供永和營銷型網(wǎng)站建設(shè),永和網(wǎng)站制作、永和網(wǎng)頁設(shè)計、永和網(wǎng)站官網(wǎng)定制、重慶小程序開發(fā)公司服務(wù),打造永和網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供永和網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。
int main(int argc,char *argv[])
{
for(inti=0;iargc;i++)
{
coutargv[i]'\t'; //
}
return0;
}
/*
int argc, char **argv 用于運行時,把命令行參數(shù)傳入主程序。
argc -- 命令行參數(shù)總個數(shù),包括 可執(zhí)行程序名。
argv[i] -- 第 i 個參數(shù)。
argv[0] -- 可執(zhí)行程序名。
*/
關(guān)于帶參數(shù)的main函數(shù)網(wǎng)絡(luò)收集:
int main(int argc,char **argv) 這里面的**argv含義··
是用來傳遞參數(shù)的,假如你編譯成的文件名是a.exe,那么在命令提示符下可以通過a.exe12
34來向程序傳遞參數(shù),這時兩個參數(shù)就會傳遞到字符串?dāng)?shù)組argv中,注意此時實際傳遞了三個參數(shù),第一個參數(shù)是文件名,第二個參數(shù)是12,第三個是34,而argc就是參數(shù)個數(shù)。
int argc, char **argv 用于運行時,把命令行參數(shù)傳入主程序。
argc -- 命令行參數(shù) 總個數(shù),包括 可執(zhí)行程序名。
argv[i] -- 第 i 個參數(shù)。
argv[0] -- 可執(zhí)行程序名。
// 例如運行:
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".
主函數(shù)里若有:
int x;
float y;
char s[80];
strcpy(s,argv[0]); // 程序名存入 了 s
sscanf(argv[1],"%d",x); // x 得到數(shù)值4
sscanf(argv[2],"%f",y); // y 得到數(shù)值 5.2
ANSI-C(C89/C99)的話main()函數(shù)有2種主要形式。
(1) int main(void)
(2) int main(int argc, char *argv[])
(2)也可寫成int main(int argc, char **argv)
argv[argc]放空指針(NULL指針)。
argc和argv可以用別名。
另外,還有一種受系統(tǒng)限制的形式:
int main(int argc, char *argv[], char *envp[])
前兩個參數(shù)同(2),第三個參數(shù)envp[]放環(huán)境變量。
這個形式很少用。
所以嚴(yán)格講,
ANSI-C推薦的帶參數(shù)的main()函數(shù)只有上面(2)這一種。
另外,搜集了一下C和C++中常見的幾種形式:
(1) main()
(2) int main()
(3) int main(void)
(4) 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) void main(void)
(1)是(3)的簡寫。不推薦使用。
(2)是(3)的簡寫。在C++中是正確的形式。
(3)在C和C++中都是正確的形式。推薦使用。(還有缺省int的main(void)形式)。
(4)和(5)是不用參數(shù)時的一種寫法。編譯器級別高時會警告。不推薦使用。
(6)是(7)的另外寫法。兩種都可以,憑個人愛好。
(7)是帶參數(shù)的正確的形式。推薦使用。
(8)是一種很少用的寫法,且受系統(tǒng)限制。
(9)一般不認(rèn)為是正確的寫法。但是在嵌入式系統(tǒng)中有使用(包括void main()形式)
*代表指針,F(xiàn)ILE代表是一個文件類型,stream是參數(shù)名稱。
FILE * stream表示的是一個叫stream的參數(shù),他是一個指針,并且這個指針指向FILE(文件)類型。
char * format表示的是一個叫format的參數(shù)指向char(字符)類型的指針。
一般寫法都是: 函數(shù)類型 函數(shù)名稱;
[argument]代表參數(shù)可選,就是可以繼續(xù)增加參數(shù)。
void表示參數(shù)為空,即這個函數(shù)不含參數(shù),比如定義一個print函數(shù)。
程序執(zhí)行總是從main函數(shù)開始,如果有有其他函數(shù),則完成對其他函數(shù)的調(diào)用后再返回到主函數(shù),最后由main函數(shù)結(jié)束整個程序。在執(zhí)行程序時,由系統(tǒng)調(diào)用main函數(shù)。main 函數(shù)是在程序啟動中完成對具有靜態(tài)存儲期的非局部對象的初始化之后被調(diào)用的。它是程序在有宿主 (hosted)環(huán)境(亦即有操作系統(tǒng))中所指定的入口點。自立程序(啟動加載器,操作系統(tǒng)內(nèi)核,等等)的入口點則是由實現(xiàn)定義的。
擴展資料:
主函數(shù)的兩個形參形式中的形參,允許從執(zhí)行環(huán)境中傳遞任意的多字節(jié)字符串(它們通常被稱為命令行參數(shù)),各個指針 argv.. argv[argc-1] 指向每個這些字符串的第一個字符。argv[0] 是指向一個表示用于執(zhí)行該程序自身的名字的空結(jié)尾多字節(jié)字符串(或者當(dāng)執(zhí)行環(huán)境不支持時,為空字符串 "")的開頭字符的指針。
這些字符串是可以改動的,雖然對它們的改動并不會被傳回給執(zhí)行環(huán)境:比如可以用 std::strtok 來使用它們。由 argv 所指向的數(shù)組的大小至少為 argc+1,其最后一個元素 argv[argc] 保證為一個空指針。
新聞標(biāo)題:c語言函數(shù)括號里的參數(shù) c語言函數(shù)括號里的參數(shù)是什么
網(wǎng)站URL:http://jinyejixie.com/article46/hpcgeg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供搜索引擎優(yōu)化、品牌網(wǎng)站制作、營銷型網(wǎng)站建設(shè)、品牌網(wǎng)站建設(shè)、微信小程序、外貿(mào)建站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)