簡體   English   中英

C 多維字符串數組

[英]C multidimensional array of strings

我聲明一個字符串數組非常簡單,硬編碼,但它一直給我array type has incomplete element type錯誤。

我想這與每個數組的長度有關,但我不知道如何在不為字符串設置固定長度的情況下修復它。

char allocate[][2][] = {  // Error with or without the 2
    {"value1","value2"},
    {"value3","value4"}
};

該語法無效。 如果您想要一個真正的多維數組,則必須指定所有維度,除了第一個。 (編譯器必須知道“內部”arrays 有多大才能對外部尺寸進行地址計算。)

試試這個:

const char *allocate[][2] = {
    {"value1","value2"},
    {"value3","value4"}
};

它聲明了一個const char *的二維數組。

請注意,如果您想要可以寫入的字符串,則上述方法將不起作用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM