下面命令將文件 a性置,拷貝成文件 b吨枉。
# cp a b
a 和 b伪冰,就是 cp 命令的命令行參數(shù)誓酒。
程序要感知到命令行參數(shù),main 函數(shù)應(yīng)該寫(xiě)成這樣:
int main(int argc, char * argv[])
{
...
}
argc代表命令行參數(shù)的個(gè)數(shù)糜值,包含命令本身。所以在上面拷貝的例子中坯墨,argc等于3寂汇。
argv是個(gè)指針數(shù)組,每個(gè)數(shù)組元素都是 char * 類型捣染,以字符串的形式存儲(chǔ)命令行參數(shù)骄瓣。
argc和argv,都是操作系統(tǒng)在啟動(dòng)程序時(shí)耍攘,放入程序的堆棧中的榕栏。
例如畔勤,下面的程序打印出所有命令行參數(shù)。
#include <stdio.h>
int main(int argc, char * argv[])
{
for (int i = 0; i < argc; i++ ) { printf ("%s\n", argv[i]); }
return 0;
}
命令行參數(shù)以空格分隔扒磁,如果一個(gè)參數(shù)內(nèi)部有空格庆揪,則用雙引號(hào)括起來(lái)即可。如 "hello world" 代表一個(gè)參數(shù)妨托。