在之前的文件中,main 函式在括號中總是空白的,若要使用命令列引數,可以在括號中如下填寫:
int main(int argc, char *argv[]) {
....
}
參數 argc 是一個整數,記錄命令列引數的個數,這個數目包括了程式名稱,例如下面的執行指令,argc 將記錄為 5:
prog hello.c -o -c project.p
每個引數之間以空白作區隔,上面的命令包括程式名稱共會有五個引數,即 "prog"、"hello.c"、"-o"、"-c"、"project.p"。
程式在執行後,argc 的值一定大於 1,因為至少包括了程式名稱,而 argv 分別儲存了引數的字串,例如上面的例子中,argv[0] 是 "prog"、 argv[1] 是 "hello.c"、argv[2] 是 "-o"、argv[3] 是 "-c"、argv[4] 是 "project.p"。
在命令列引數的使用中,若輸入是一個包括空白的字串,就使用 "" 來包括,例如:
prog "This is a string!"
如此 argv[0] 是程式名稱 "prog",而 argv[1] 的字串就會是 "This is a string!"。
底下的範例簡單地將命令列引數輸出:
#include <iostream>
using namespace std;
int main(int argc, char *argv[]) {
for(int i = 1; i < argc; i++) {
cout << argv[i] << endl;
}
return 0;
}

