3-6指標與陣列的天生姻緣
3.6.1以指標方式來訪問陣列元素
(1)陣列元素使用時不能整體訪問,只能單個訪問。訪問方式有2種:陣列形式和指標形式。
(2)陣列格式訪問陣列元素是:陣列名[下標];(注意下標從0開始)
(3)指標格式訪問陣列元素是:*(指標 + 偏移量);如果指標是陣列首元素地址(a或者a[0]),那麼偏移量就是下標;指標也可以不是首元素地址而是其它哪個元素的地址,這時候偏移量就要考慮疊加了。
(4)陣列下標方式和指標方式均可以訪問陣列元素,兩者的實質其實是一樣的。在編譯器內部都是用指標方式來訪問陣列元素的,陣列下標方式只是編譯器提供給程式設計者的一種殼(語法糖)而已。所以用指標方式來訪問陣列才是本質的做法。
3.6.2從記憶體角度理解指標訪問陣列的實質
(1)陣列的特點就是:陣列中各個元素的地址是依次相連的,而且陣列還有一個很大的特點(其實也是陣列的一個限制)就是陣列中各個元素的型別必須相同。型別相同就決定了每個陣列元素佔幾個位元組是相同的(譬如int陣列每個元素都佔4位元組,沒有例外)。
(2)陣列中的元素其實就是地址相連線、佔地大小相同的一串記憶體空間。這兩個特點就決定了只要知道陣列中一個元素的地址,就可以很容易推算出其它元素的地址。
#include
相關文章
- 指標陣列與陣列指標指標陣列
- 指標陣列和陣列指標與二維陣列指標陣列
- 陣列指標,指標陣列陣列指標
- 陣列指標 指標陣列陣列指標
- Go 陣列指標(指向陣列的指標)Go陣列指標
- 陣列指標和指標陣列陣列指標
- C++ 指標陣列與陣列指標的區別C++指標陣列
- 陣列指標:a pointer to an array,即指向陣列的指標陣列指標
- 二維陣列與指標陣列指標
- 指標 與 陣列 以及 a 與 &a的區別指標陣列
- C語言程式設計基礎:指標陣列與陣列指標C語言程式設計指標陣列
- C語言學習歷程(十二)陣列指標與指標陣列C語言陣列指標
- 陣列指標陣列指標
- Golang 學習——陣列指標和指標陣列的區別Golang陣列指標
- C語言 指標與陣列C語言指標陣列
- 陣列與指標&氣泡排序陣列指標排序
- 字串指標與字元陣列 (轉)字串指標字元陣列
- 指向陣列的指標陣列指標
- 陣列和指標陣列指標
- 指標和陣列指標陣列
- 陣列,函式與指標 詳解陣列函式指標
- c程式設計--指標與陣列C程式程式設計指標陣列
- 徹底搞清C/C++中一維陣列,二維陣列,指標,陣列指標和指標陣列以及指向指標的指標,行地址和列地址之間的關係C++陣列指標
- C陣列和指標陣列指標
- 深入探索 C/C++ 陣列與指標的奧祕之一:陣列與指標概念剖析C++陣列指標
- C語言指標(三):陣列指標和字串指標C語言指標陣列字串
- 徹底粉碎“指標與陣列的困惑”(上) (轉)指標陣列
- 【原創】淺談指標(十三)指向陣列的指標指標陣列
- 陣列地址與指標之間的區別與聯絡陣列指標
- C語言雜談:指標與陣列 (上)C語言指標陣列
- C語言雜談:指標與陣列 (下)C語言指標陣列
- C語言雜談:指標與陣列(下)C語言指標陣列
- 二維陣列和指標陣列指標
- C++語言中陣列指標和指標陣列徹底分析(系列一) (轉)C++陣列指標
- 天生一對,硬核微分方程與深度學習的「聯姻」之路深度學習
- 指標和二位陣列指標陣列
- 指標陣列練習排列字串指標陣列字串
- C/C++——宣告一個到字元的指標,包含10個整數的陣列,到包含10個整數的陣列的引用,到字串的陣列的指標,到字元的指標的指標...C++字元指標陣列字串