我沒有幫助地看着這個SO post。二維陣列,兩個邊界都沒有指定
int main()
{
int a[][] = {{1,2},{3,4}};
}
錯誤
$ gcc a.c
a.c:6:8: error: array has incomplete element type 'int []'
int a[][] = {{1,2},{3,4}};
^
1 error generated.
爲什麼a[][]
不完整的類型?
爲什麼int a[][2]
很好?
我會假設,因爲編譯器可以初始化這個二維數組,它也可以自動計算出邊界?我知道我需要提供尺寸,但爲什麼?這是語言要求嗎?
是不是二維數組第二個字段必須聲明,即使第一個isnt? –