如何在 C 中訪問命令行參數
學習如何在 C 中訪問命令行參數
在你的 C 程式中,當命令啟動時,你可能需要從命令行接受參數。
對於簡單的需求,你只需要將 main()
函数的簽名從
1 | int main(void) |
修改為
1 | int main(int argc, char *argv[]) |
argc
是一個整數,它包含了命令行中提供的參數數量。
argv
是一個字符串數組。
當程式啟動時,我們可以通過這兩個參數獲取傳入的參數。
注意,
argv
數組中始終至少有一個項目:程式的名稱
讓我們以運行 C 編譯器來執行我們的程式為例:
1 | gcc hello.c -o hello |
如果這是我們的程式,則 argc
會為 4,argv
則是一個包含以下項目的數組:
gcc
hello.c
-o
hello
讓我們編寫一個打印接收到的參數的程式:
1 |
|
如果我們的程式名稱是 hello
,並且像這樣運行它:./hello
,則會得到以下輸出:
1 | ./hello |
如果我們傳入一些隨機的參數,例如:./hello a b c
,則會在終端輸出以下內容:
1 | ./hello |
對於簡單的需求,這個系統運作得很好。對於更複雜的需求,常用的庫,如 getopt
,可以提供更多功能。
tags: [“c”, “command-line”, “application-programming”]