C#中的多維數組與C中的多維數組的區別

C中的多維數組其實是一維數組來實現的


比如:


int a[i][j],創建的時候,可以不給出i的值,但是必須給出j的值。


也就是說在c中多維數組的實現方式是這樣的:(以二維數組爲例)


用一維數組來存儲二維數組,然後劃分長度爲j的片段,每一個片段爲一行。



也就是說,c中的多維數組在分配存儲空間的時候,每一行都在一開始便分配好了相等的存儲空間,即是定長的



而在C#或者Java中實現方式可是使得多維數組變長,還是以二維數組作比


int a[i][j],在實例化的時候,一定要給出i的值,但是可以不給出j的值


也就是說,只分配給每一行一個引用,但是每個引用指向的空間的大小還得再一次實例化。

從而實現列的變長~

發佈了18 篇原創文章 · 獲贊 4 · 訪問量 9萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章