main函式中兩個引數的用法總結

2021-07-10 18:42:23 字數 1281 閱讀 8685

1、定義

c語言規定main函式的引數只能有兩個,習慣上這兩個引數寫為argc和argv。因此,main函式的函式頭可寫為: main (argc,argv)c語言還規定argc(第乙個形參)必須是整型變數,argv( 第二個形參)必須是指向字串的指標陣列。加上形參說明後,main函式的函式頭應寫為:

int main (int argc,char *argv)或者

int main (int argc,char **argv)

其中第乙個表示引數的個數;第二個引數中argv[0]為自身執行目錄路徑和程式名,argv[1]指向第乙個引數、argv[2]指向第二個引數……

完整程式如下:

#include

#include

using

namespace

std;

int main(int argc, char **argv)

2、如何執行

由於main函式不能被其它函式呼叫, 因此不可能在程式內部取得實際值。那麼,在何處把實參值賦予main函式的形參呢? 實際上,main函式的引數值是從作業系統命令列上獲得的。當我們要執行乙個可執行檔案時,在dos提示符下鍵入檔名,再輸入實際引數即可把這些實參傳 送到main的形參中去,具體操作如下:

首先在c++中完成編譯之後,然後在dos命令視窗下切換到.exe執行檔案所在的資料夾(dos下如何切換目錄見dos中切換碟符及目錄),再在該路徑下輸入帶引數的命令:***.exe a b c …即可得到輸出。

3、練習題

不合法的main函式命令列引數表示形式是

(a) main(int a,char *c) (b) main(int arc,char **arv)

(c) main(int argc,char *argv) (d) main(int argv,char *argc)

分析:main的第2個引數應該為乙個字元陣列指標,b的第二個引數是乙個指向字元的指標的指標,也就是乙個字串陣列;

c的第二個引數是乙個指向字元的指標,也就是乙個字串.

char **argv或者char *argv是個二維陣列,也可以理解為乙個存放字元指標的陣列—字元指標陣列。每個元素存放乙個字元指標,而字元指標又是可以指向乙個字串的,這n個字串分別由argv[0]~~~argv[n]來指向.

這個就是指標陣列,不是別的,特別不是二維陣列。

綜述,答案為c。

main函式的兩個引數

語言規定main函式的引數只能有兩個,習慣上這兩個引數寫為argc和argv。因此,main函式的函式頭可寫為 main argc,argv 語言還規定argc 第乙個形參 必須是整型變數,argv 第二個形參 必須是指向字串的指標陣列。加上形參說明後,main函式的函式頭應寫為 main argc...

main函式的兩個引數

語言規定main函式的引數只能有兩個,習慣上這兩個引數寫為argc和argv。因此,m ain函式的函式頭可寫為 main argc,argv 語言還規定argc 第乙個形參 必須是整型變數,argv 第二個形參 必須是指向字串的指標陣列。加上形參說明後,main函式的函式頭應寫為 main arg...

main函式的兩個引數

語言規定main函式的引數只能有兩個,習慣上這兩個引數寫為argc和argv。因此,main函式的函式頭可寫為 main argc,argv 語言還規定argc 第乙個形參 必須是整型變數,argv 第二個形參 必須是指向字串的指標陣列。加上形參說明後,main函式的函式頭應寫為 main argc...