有參數(shù),用于傳遞命令行位置參數(shù)到程序里.
公司主營業(yè)務:網(wǎng)站建設、成都做網(wǎng)站、移動網(wǎng)站開發(fā)等業(yè)務。幫助企業(yè)客戶真正實現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競爭能力。創(chuàng)新互聯(lián)建站是一支青春激揚、勤奮敬業(yè)、活力青春激揚、勤奮敬業(yè)、活力澎湃、和諧高效的團隊。公司秉承以“開放、自由、嚴謹、自律”為核心的企業(yè)文化,感謝他們對我們的高要求,感謝他們從不同領域給我們帶來的挑戰(zhàn),讓我們激情的團隊有機會用頭腦與智慧不斷的給客戶帶來驚喜。創(chuàng)新互聯(lián)建站推出尼勒克免費做網(wǎng)站回饋大家。
例如:
輸入長寬,計算矩型面積
void main(int argc,char *argv[]){
float area,w,h;
if (argc 3) {
printf("\007Usage:%s width height\n",argv[0]);
printf("for example:%s 12.3 4.5\n",argv[0]);
exit(0);
}
// 參數(shù)0 是程序名,argc參數(shù)個數(shù)
sscanf(argv[1],"%f",w); // 從參數(shù)1取得寬
sscanf(argv[2],"%f",h); // 從參數(shù)2取得高
area = w * h;
printf("area=%f\n",area);
exit(0);
}
命令行:
prog.exe 12.3 4.5
C語言的帶參數(shù)的main函數(shù)格式為main(int?argc,char*?argv[]),其中argc為參數(shù)個數(shù)加1,argv為參數(shù)列表,從argv[1]開始。編譯后生成可執(zhí)行文件,可以在執(zhí)行的程序后加參數(shù),比如編譯一個程序為test.exe,則在執(zhí)行時可以輸入:
test.exe?1?firestone
在這里,argc等于3,argv[0]為"test.exe",argv[1]為"1",argv[2]為"firestone"。
如果有下面的程序:
#include?stdio.h
void?main(int?argc,char?*argv[])
{
printf("You've?input?%d?parameters.\n",argc-1);
for(int?i=1;iargc;i++)printf("The?No.%d?is:%s\n",i,argv[i]);
}
則上面的輸入會產(chǎn)生如下運行結果:
You've?input?2?parameters.
The?No.1?is?1
The?No.2?is?firestone
void hello(int i)
{
i+=5;
printf("%d",i);
}
這個函數(shù)的作用是打印一個比形參大5的數(shù)。
主程序中調用是hello(0) (j=0)
所以就打印一個5
int main (int argc,char *argv[]) 或者 int main (int argc,char **argv)
其中第一個表示參數(shù)的個數(shù);第二個參數(shù)中argv[0]為自身運行目錄路徑和程序名,argv[1]指向第一個參數(shù)、argv[2]指向第二個參數(shù)……
測試例子:
#include stdio.h#include string.h
int main(int argc,char *argv[])
{
printf("argc= %d\n",argc);
while(argc--)
{
printf("%s \n",*argv++);
}
return 0;
}