26 指標和陣列分析(上)

2021-09-25 01:36:49 字數 1770 閱讀 5071

1、陣列的本質

提出問題:

— 假設a是乙個陣列,a+1 = ?

— 假設a是乙個指標,a+1 = ?

— 指標運算的意義是什麼?結果又是什麼?

指標+n 的本質就是指標所指向的位址+指向資料的型別佔的記憶體大小 * n

#include int main()

; int* p = null;

printf("a = 0x%x\n", (unsigned int)(a));

printf("a+1 = 0x%x\n", (unsigned int)(a+1)); //陣列名+1等同於指標+1

2、指標的運算

p1 - p2  = ( (unsigned int)p1 - (unsigned int)p2 )/sizoeof(type)
注意:

— 只有當兩個指標指向同乙個陣列的元素時,指標相減才有意義,其意義為指標所指元素的下標差

— 當兩個指標指向的元素不在同乙個陣列中時,結果未定義

3、指標的比較

29 指標和陣列分析(下)

注 部落格中內容主要來自 狄泰軟體學院 部落格僅當私人筆記使用。測試環境 ubuntu 10.10 gcc版本 4.4.5 一 問題 陣列名可以當做指標常量使用,那麼指標是否也可以當做陣列名來使用呢?二 陣列的訪問方式 1 以下標的形式訪問陣列中的元素 int main a 1 3 a 2 5 re...

指標和陣列分析(上)

陣列是一段連續的記憶體空間 陣列的空間大小為sizeof arrary type arrary size 陣列名可看做指向陣列第乙個元素的常量指標 a 1的意義是什麼?結果是什麼?指標運算的意義是什麼?結果又是什麼?1 include 2 intmain 3 5int p null 6 printf...

C 28 指標和陣列分析

問題 a 1的意義是什麼?結果是什麼?指標運算的意義是什麼?結果是什麼?程式設計分析 a 1 示例 include int main int p null printf a 0x x n unsigned int a printf a 1 0x x n unsigned int a 1 陣列名看著常...