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