linux - c語言這樣一個指標怎麼理解 ?
巴扎黑
巴扎黑 2017-05-16 13:25:35
0
1
622
#include <stdio.h>
int main(){
    char *params[][2] = {
        {"age", "18"},
        {"name", "小明"},
        {"address", "beij"},
        {"", ""}
    };

    printf("%s\n", params[0][0]);
    return 0;
}

不太理解

巴扎黑
巴扎黑

全部回覆(1)
淡淡烟草味

每一個陣列元素都是字串。定義字串的時候要用char *,這樣理解了吧?

當你定義一個字串的時候,用的是char *a = "test";對吧,
那麼當你定義一個字串陣列的時候,陣列內的元素是不是應該都是char *a = "test";对吧,
那么当你定义一个字符串数组的时候,数组内的元素是不是应该都是char *類型的。

這是定義一個字串,你就把char *当成char當成char來看(當然這是不對的,但在這種情況下這樣會更好理解)。

或直接這樣看,typedef char * string,那麼這個定義就變成這樣了:

string params[][2] = {
    {"age", "18"},
    {"name", "小明"},
    {"address", "beij"},
    {"", ""}
};
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板