C中的多維數組其實是一維數組來實現的
比如:
int a[i][j],創建的時候,可以不給出i的值,但是必須給出j的值。
也就是說在c中多維數組的實現方式是這樣的:(以二維數組爲例)
用一維數組來存儲二維數組,然後劃分長度爲j的片段,每一個片段爲一行。
也就是說,c中的多維數組在分配存儲空間的時候,每一行都在一開始便分配好了相等的存儲空間,即是定長的
而在C#或者Java中實現方式可是使得多維數組變長,還是以二維數組作比
int a[i][j],在實例化的時候,一定要給出i的值,但是可以不給出j的值
也就是說,只分配給每一行一個引用,但是每個引用指向的空間的大小還得再一次實例化。
從而實現列的變長~