Argc argv意思

在C語言中,argcargv是兩個特殊的變數,它們用於傳遞命令行參數給程式。

argc(argument count)是指命令行參數的個數。當用戶在命令行界面運行程式時,可以向程式傳遞零個或多個參數。argc變數是一個整數,它包含了傳遞給程式的所有參數(包括程式名)的數量。

argv(argument vector)是一個指向字元數組的指針數組,這些字元數組包含了命令行參數的字元串表示。argv中的每個元素都是一個指向字元串的指針,這些字元串表示了命令行參數。argv數組的第一個元素argv[0]指向的是程式的名稱,argv[1]指向的是第一個命令行參數,以此類推。

下面是一個簡單的例子,展示了如何使用argcargv

#include <stdio.h>

int main(int argc, char *argv[]) {
    // 輸出命令行參數的數量
    printf("Number of arguments: %d\n", argc);

    // 輸出每個命令行參數
    for (int i = 0; i < argc; i++) {
        printf("%d: %s\n", i, argv[i]);
    }

    return 0;
}

如果我們在命令行界面運行上面的程式,並傳遞一些參數,比如:

$ ./program arg1 arg2 arg3

那麼程式將會輸出:

Number of arguments: 4
0: ./program
1: arg1
2: arg2
3: arg3

在這裡,argc的值是4,因為包括了程式名和三個命令行參數。argv數組中,argv[0]指向程式名,argv[1]指向第一個參數「arg1」,argv[2]指向第二個參數「arg2」,argv[3]指向第三個參數「arg3」。