C#多維數組簡單描述
在向大家詳細介紹C#數組之前,首先讓大家了解下C#多維數組,然后介紹如何分解C#多維數組。
C#多維數組
但所有其他語言都把這稱為“數組的數組”
◆C語言里有一種別的語言稱為數組的數組的形式,但C語言稱它為多維數組。
◆C語言中的數組就是一維數組,而這個數組的元素可以是另一個數組。
編譯器在編譯時會把carrot[i][j]解析為*(*(carrot+i)+j)的形式。
如何分解C#多維數組
在“數組的數組的數組”中的每一個單獨的數組都可以看作是一個指針。這是因為在表達式中的數組名被編譯器當作“指向數組***個元素的指針”。
內存中數組是如何布局的
在C#多維數組中,最右邊的下標是***變化的,這個約定稱為“行主序”。如何對數組進行初始化,只能夠在數組聲明時對它進行整體的初始化。之所以存在這個限制,并沒有過硬的理由。在IEEE754標準浮點數實現中,0.0和0的位模式是完全一樣的。
初始化二維字符串數組:
- char vegetables[][9] =
- {
- "beet",
- "barley",
- "basil",
- "broccoli",
- "beanes"
- };
一種有用的方法是建立指針數組,字符串常量可以數組初始化值:
- char *vegetables[] =
- {
- "beet",
- "barley",
- "basil",
- "broccoli",
- "beanes"
- };
【編輯推薦】