命令列編譯中的argc argv

2021-07-12 04:25:26 字數 797 閱讀 1044

在需要進行輸入引數傳遞的函式中,我們經常可以見到int main(int argc ,char *argv[ ])這樣的表達形式,argc ,argv這兩個引數是什麼呢?是系統的預設引數嗎?查了一下資料,才終於搞懂這兩個引數,實際上其使用也是很簡單明瞭的。

argc與argv,是unix與linux中的標準寫法,在用命令列編譯程式的時候有效。

其中argc是int型別,用來統計你輸入的,給main函式的命令列引數的個數;argv是字串陣列,用來存放指向輸入的字串引數的指數指標,每乙個陣列元素指向乙個輸入引數。

通過幾句簡單**實驗,便是一眼看穿這兩個引數的作用了:

int main(int argc, char *argv)}}

執行後輸出的結果是:

argv[0]儲存的是執行檔案命令,因此可以看出argv儲存的是你輸入的所有引數,並不是只限於傳給main函式的引數。

argc、argv最常用,也是最簡單的場景是在用linux命令列建立新檔案的時候,具體**如下所示:

#include

#include

#include

#include

#include

void create_file(char *filename)

else

int main(int argc, char *argv)

/*以傳入的第二個引數為檔名,建立新檔案*/

create_file(argv[1]);

exit(exit_success);}}

用argv傳遞建立檔案的名稱,用argc進行輸入引數數量的記錄。

c語言中命令列引數argc,argv

main int argc,char argv argv 指標的指標 argc 整數 char argv or char argv or char argv 為了能形象的說明這兩個引數的含義,我們先用乙個例項來進行講解 假設程式的名稱為test,當只輸入test,則由作業系統傳來的引數為 argc ...

c語言中命令列引數argc,argv

argv 指標的指標 argc 整數 char argv or char argv or char argv 為了能形象的說明這兩個引數的含義,我們先用乙個例項來進行講解 假設程式的名稱為test,當只輸入test,則由作業系統傳來的引數為 argc 1,表示只有一程式名稱 argc只有乙個元素,a...

命令列編譯Solution

c windows devenv.com microsoft r 開發環境 7.10.3077 版。c microsoft corp 1984 2001 保留所有權利。用法 devenv solutionfile projectfile anyfile.ext switches 可以呼叫 deven...