4 指標運算 指標函式詳解

2021-10-14 20:02:51 字數 1614 閱讀 4262

1. 指標:(資料型別)

儲存位址的資料型別;

2. 指標變數:(儲存位址的變數)

4. 指標的定義:

型別名 變數名;

型別名 * 變數名;(*表示指標變數);

(指標的計算*****型別名)

定義:先*,後變數名,後型別名。

int -3 *-1 p -2 ;

5. 指標所佔位元組(資料型別)

在32位系統中,佔4個位元組;

6. 指標變數型別:(去掉變數名)

int * * ppf ;

7. 指標定義結束後必須初始化,避免野指標;

8. 記憶體空間的訪問:

直接訪問:通過變數名的方式訪問;

11. 段錯誤:

操作非法的記憶體空間;(操作野指標);

使用系統未經分配給自己的記憶體空間;

12. 空指標null 巨集定義為0

13. 指標初始化:=null;

14. *指標變數==等於變數名,而不是記憶體空間存放的常量;

int i=5, *p=&i;

*p=8; //正確,更改i的值。

答案:b.c

b: *p2不建議使用;檢視非法記憶體空間;

d: *p2=*p1; 操作(寫)非法記憶體空間;

15. 指標(位址)的運算(陣列名的運算)

實體地址=絕對位址+位址偏移

p+i ***** p+i*sizeof(資料型別)

16. 陣列元素的指標訪問:

若p=arr; //p=&arr[0]

則:*(p+i)==*(arr+i)==arr[i]==p[i]

無條件:arr[i]******(arr+i)

17. 陣列程式設計技巧:(連寫)

int i , *p=&i ;

18. 函式:

返回值型別 函式名 (形參列表)

函式的入口: 形參;呼叫時分配記憶體空間)

引數傳遞為副本模式,位址傳遞時若要需要加const

函式的出口:返回值;副本模式

19. gdb除錯

1. 編譯帶除錯引數的可執行檔案。

2. 設定斷點b 執行r

3. next 語句(n) ; step 單步 (s)

4,。退出q;

20. 函式的宣告

形參變數名可省略;但是定義時不可預設。

21. 二維陣列名:(陣列名是乙個指標)

22. 技巧:

元素下標【】:隱含有*

keli4 指標運算 C語言指標 指標運算超詳細

很多童鞋在接觸c語言使用指標的時候,總是本著乙個原則 能不用就不用!所以對於指標的認識也難免有所侷限,所以禁停啊我們就來普及乙個 冷知識 指標運算。其實這樣的東西對於一些程式設計 湖早已經不是什麼秘密,只是說對於很多小萌新而言,覺得這樣的操作不可思議,高大上。其實跟其他的很多知識一樣,都是 難者不會...

c指標點滴三(指標運算)

1 include 2 include 3 4void main3 512 13 void main4 14 24 system pause 25 26 27void main5 28 30int p5 a 2 31 printf d a 2 32 p5 p5 2 相當於在陣列內部向後移動兩個元素的...

《c和指標》摘錄4 指標

記憶體和位址 計算機的記憶體由數以億計的位 bit 組成,每個位可以容納0或1。由於乙個位能表示的值範圍太有限,所以單獨的用處不大,通常許多位合成一組作為乙個單位,這樣就可以儲存範圍比較大的值。指標變數 專門存放變數的位址的變數 定義指標變數 資料型別 變數名 int a 指標變數必須初始化再使用 ...