看個(gè)三維數(shù)組的筆試題。
給定下列聲明,把下列各個(gè)指針表達(dá)式轉(zhuǎn)換為下標(biāo)表達(dá)式。
這是最近學(xué)生在做筆試題時(shí)候遇到的,先別管這個(gè)三維數(shù)組有沒(méi)有實(shí)用價(jià)值,既然出現(xiàn)了,還是得做。
三維數(shù)組可以看成是由多個(gè)二維數(shù)組組成。
比如題目中聲明的這個(gè),就是由4個(gè)5行3列的二維數(shù)組組成。把這些二維數(shù)組編個(gè)號(hào),就是 0 1 2 3。
三維數(shù)組比二維數(shù)組更加復(fù)雜一點(diǎn),我們先來(lái)搞懂幾個(gè)概念。
在三維數(shù)組中:
數(shù)組名 array 表示第 0 個(gè)二維數(shù)組的地址;
array[0] 表示第 0 個(gè)二維數(shù)組第 0 行的地址;
array[0][0] 表示第 0 個(gè)二維數(shù)組第 0 行第 0 個(gè)元素的地址;
array[0][0][0] 就是具體的元素,它不表示地址。
再來(lái)看題目。
*array。array表示第 0 個(gè)二維數(shù)組地址,*array表示第 0 個(gè)二維數(shù)組第 0 行的地址,下標(biāo)表示法 array[0]。
*(array + 2) 。array + 2 表示第2個(gè)二維數(shù)組的地址,再加星號(hào),就是第2個(gè)二維數(shù)組首行地址,下標(biāo)表示法 array[2]。
*(array + 1) + 4。 array + 1表示第 1 個(gè)二維數(shù)組的地址,加上星號(hào),表示第1個(gè)二維數(shù)組首行地址,再加4,表示第4行地址,下標(biāo)表示法 array[1] + 4。
第四題,在第三題的基礎(chǔ)上又加上了星號(hào),含義再次改變,表示第 1 個(gè)二維數(shù)組,第 4 行首元素的地址,下標(biāo)表示法 array[1][4]。
第五題最簡(jiǎn)單,直接表示第 3 個(gè)二維數(shù)組第 1 行第 2 個(gè)元素,array[3][1][2]。
第六題雖然也有三個(gè)星號(hào),但是寫(xiě)法跟上面略有區(qū)別。*array 表示第 0 個(gè)二維數(shù)組首行地址,+1表示第 1 行地址,再加星號(hào),表示第一行首元素地址,加 2 表示第一行第二個(gè)元素地址,
最后一個(gè)星號(hào)就是取值,用下標(biāo)表示就是array[0][1][2]。
最后三個(gè)留給大家練習(xí)使用。
在數(shù)組和指針的概念中,* 和 [] 有相同的意思,雖然有時(shí)候不是真正的取值操作,但是可以改變地址的含義。比如題目中,出現(xiàn) 1 個(gè)星號(hào),表示行的地址,出現(xiàn)兩個(gè)星號(hào),表示元素的地址,出現(xiàn)三個(gè)星號(hào),就是具體的元素。
審核編輯:湯梓紅
-
三維
+關(guān)注
關(guān)注
1文章
489瀏覽量
28923 -
指針
+關(guān)注
關(guān)注
1文章
478瀏覽量
70491 -
二維
+關(guān)注
關(guān)注
0文章
39瀏覽量
11970 -
數(shù)組
+關(guān)注
關(guān)注
1文章
412瀏覽量
25881
原文標(biāo)題:三維數(shù)組,如何用下標(biāo)表示指針
文章出處:【微信號(hào):學(xué)益得智能硬件,微信公眾號(hào):學(xué)益得智能硬件】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論