什么是指針(指針是C語言的靈魂) 指針就是地址,地址就是指針 地址就是內存單元的編號 指針變量就是存放地址的變量 指針和指針變量是兩個不同的概念 但要注意的是:我們通常把指針變量叫做指針,但是實際意義不同 指針的本質就是一個操作受限的非負函數(指針不能加乘和除,但是能進行相減)
基本類型指針 # include <stdio.h> Int main () { Int *p //p是變量的名字, Int *p 表示p存放的是int類型變量的地址 int*p不變是定義了一個叫做*p的變量 int*p應該這樣理解:p是變量名,p變量的數據類型是int*類型 所謂int*類型實際上就是存放int變量地址的類型 int =3; Int j; P=&i //p保存了i的地址,因此p指向i p不是i,i也不是p,準確的說:修改p的值不影響i的值,修改i 的值不影響p的值 p保存i的地址 因為p保存i的值,所以p指向i 因為p指向i,所以p就是i
星號的用法(*) *的含義 1.用作乘法 2.定義指針變量 int*p //定義了一個名字叫p的變量,int*表示p只能存放int變 量的地址 3.指針運算符 該指針運算符放在已經定義好的指針變量的前面 如果p是已經定義好的指針變量 則*p表示 以P的內容為地址的變量
|