3-6指標與陣列的天生姻緣

非主流的豆瓣發表於2020-10-10

3.6.1以指標方式來訪問陣列元素

(1)陣列元素使用時不能整體訪問,只能單個訪問。訪問方式有2種:陣列形式和指標形式。
(2)陣列格式訪問陣列元素是:陣列名[下標];(注意下標從0開始)
(3)指標格式訪問陣列元素是:*(指標 + 偏移量);如果指標是陣列首元素地址(a或者a[0]),那麼偏移量就是下標;指標也可以不是首元素地址而是其它哪個元素的地址,這時候偏移量就要考慮疊加了。
(4)陣列下標方式和指標方式均可以訪問陣列元素,兩者的實質其實是一樣的。在編譯器內部都是用指標方式來訪問陣列元素的,陣列下標方式只是編譯器提供給程式設計者的一種殼(語法糖)而已。所以用指標方式來訪問陣列才是本質的做法。

3.6.2從記憶體角度理解指標訪問陣列的實質

(1)陣列的特點就是:陣列中各個元素的地址是依次相連的,而且陣列還有一個很大的特點(其實也是陣列的一個限制)就是陣列中各個元素的型別必須相同。型別相同就決定了每個陣列元素佔幾個位元組是相同的(譬如int陣列每個元素都佔4位元組,沒有例外)。
(2)陣列中的元素其實就是地址相連線、佔地大小相同的一串記憶體空間。這兩個特點就決定了只要知道陣列中一個元素的地址,就可以很容易推算出其它元素的地址。

#include

相關文章