main函數是C程式的進入點,不可或缺,不可重複;
main函數應返回一個整數值給作業系統,返回0表示正常結束.
前面使用的main函數都是無參數的: int main(void);
main 可以有兩個參數: int main(int argc,char *argv[]);
第一個是自動擷取的參數數目(+1),第二個是參數列表(字串列表);
這一般用於控制台或 dos 下,
在 Windows 下我們雙擊檔案名稱開啟檔案時,該檔案名稱(包括路徑)也是通過這些參數傳遞的.
1. 擷取 main函數第一個參數的預設值:
它會是 1; 我們並沒有給它參數呀? 原來它是把檔案名稱當作第一個參數的.
#include <stdio.h>
int main(int argc,char* argv[])
{
printf("%d\n",argc); /* 1 */
getchar();
return 0;
}
2. 擷取第一個參數(也就是檔案名稱):
#include <stdio.h>
int main(int argc,char* argv[])
{
printf("%s\n",argv[0]);
getchar();
return 0;
}
3. 給 main函數建立並擷取參數列表:
如果是在控制台或 dos 下,在程式名後面輸入就是了,現在呢?
C++Builder 菜單 -> Run -> Parameters... -> 在 Parameters 輸入測試參數(譬如: 11 22 33),用空格隔開.
此對話方塊也可從 Project -> Project Options -> Debuger 進入.
#include <stdio.h>
int main(int argc,char* argv[])
{
int i;
for (i = 1; i < argc; i++) {
printf("%s\n",argv[i]);
}
printf("---\n");
while (--argc) {
printf("%s\n",argv[argc]);
}
getchar();
return 0;
}