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


















