我正在嘗試創建二維陣列。
int main() {
int stalagmite[10][6] = { { 1, 0, 0, 1, 1, 0, 1, 0, 0, 1 },
{ 1, 0, 0, 1, 1, 0, 1, 0, 0, 1 },
{ 1, 0, 0, 1, 0, 0, 0, 0, 0, 1 },
{ 1, 1, 0, 1, 1, 1, 0, 1, 0, 0 },
{ 0, 1, 1, 0, 1, 1, 0, 1, 1, 0 },
{ 0, 1, 1, 0, 1, 1, 0, 1, 1, 0 } };
printf("%d\n", stalagmite[3][3]);
}
輸出如下:
deneme.c:9:51: note: (near initialization for ‘stalagmite[5]’)
deneme.c:9:54: warning: excess elements in array initializer
9 | { 0, 1, 1, 0, 1, 1, 0, 1, 1, 0 } };
試圖用初始化器定義一個陣列。當我嘗試編譯時,它總是回傳上述錯誤。我嘗試更改大小、資料型別,但沒有任何效果。
uj5u.com熱心網友回復:
int stalagmite[10][6]定義了一個包含 10 個 6 陣列的陣列int,而您的初始化程式指定了 6 個 10 個整數的陣列。
該定義可能應該更改為int stalagmite[6][10] = {...}或可能更改為int stalagmite[][10] = {...}.
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/481241.html
