1. 程式人生 > >講解命令列引數

講解命令列引數

命令列(command line):是在命令列環境中,使用者為執行程式輸入命令的行。

命令列引數(command-line argument): 是同一行的附加項。

C編譯器允許main()沒有引數或者有兩個引數

第一個引數:argc(argument count)引數計數,是一個整數

第二個引數:argv(argument value)引數值,是一個指標陣列

 

系統用空格表示一個字串的結束和下一個字串的開始。

例如在命令列下輸入:repeat Resistance is futile

包括命令名repeat在內有4個字串,其中後3個供repeat使用,即引數。

這時候argc是4。argv依次儲存3個引數的字串地址。

 1 #include <stdio.h>
 2 
 3 int main(int argc,char *argv [])
 4 {
 5     int count;
 6 
 7     printf("The command line has %d arguments:\n",argc-1);
 8     for(count =1;count <argc;count++)
 9         printf("%d: %s\n",count,argv[count]);
10     printf("\n
"); 11 12 return 0; 13 }

編譯為可執行檔案repeat,下面是通過命令列執行該程式後的輸出:

C>repeat Resistance is futile

The command line has 3 arguments:

1: Resistance

2: is

3: futile

 

引數宣告時候也會用到:char **argv;

char **argv與char *argv [] 等價;

但是char *argv []更能清晰地表示一系列字串;