標準main有兩種寫法如下:

第一種:不接受任何參數列

int main( void ) 

{

    return 0;

}

第二種:接受兩個參數列

int main( int argc, char **argv)

{

    return 0;

}

在此將研究第二種寫法 int main( int argc, char **argv ) 內的argc與argv部分。

1. argc 為 argument count參數個數的縮寫,代表包括指令本身的參數個數,系統會自動計算。

example:假設程式所生成出來的執行檔為Test.exe ,

a. 在終端機輸入Test.exe C:\a.txt ,此為兩個參數所以argc = 2 , argv[0] = Test.exe 、argv[1] =  C:\a.txt

b. 在終端機輸入Test.exe C:\1234.txt,此為兩個參數所以argc = 2 , argv[0] = Test.exe 、argv[1] =  C:\1234.txt

c.  在終端機輸入Test.exe 1 2 3 ,此為四個參數所以argc = 4 , argv[0] = Test.exe 、argv[1] =  1、argv[2] =  2、argv[3] =  3

2. argv 為 argument value, 為使用者在命令列所輸入的字串,系統會自動將程式本身的名稱指定給argv[0],程式名稱後面所接續的參數依序指定給argv[1]....

 

小試身手小範例 

#include <stdio.h>

int main( int argc, char **argv )
{
    int i = 0;
    printf( "argc = %d\n", argc);
    for( i=0; i!=argc; ++i){
        printf( "argv[%d] = %s\n", i, argv[i] );
    }

    return 0;

}

arrow
arrow
    文章標籤
    C 參數 引數 argv argc
    全站熱搜

    S 發表在 痞客邦 留言(0) 人氣()