指標是乙個變數,變數的值是記憶體位址。
int a = 10;
/** * 指標型別為 int*
* 指標指向型別 int
* 列印(a)會輸出10
* 列印(&a)會輸出變數a所在的記憶體位址
* 列印(*q)會輸出變數a的值的記憶體位址
* 列印(q)會輸出指標q指向的記憶體位址
*/int *q = &a;
/** * 指標型別為 int*
* 指標指向型別 int
* 列印(*p)會輸出10
* 列印(p)會輸出指標p指向的記憶體位址
* 列印(&p)會輸出儲存p指向記憶體位址的記憶體位址,
* 因為指標也是變數,需要儲存到記憶體,所以指標也有記憶體位址
*/int *p = 10;
/** * 指向指標的指標
* 列印(**r)輸出10
* 假設z = (*r),(**r)可以看作(*z),列印(*z)輸出10,
* 列印(*r)輸出乙個記憶體位址x,[等價於列印(z)]
* 列印(r)會輸出記憶體位址x的記憶體位址
*/int **r = 10;
c語言指標筆記
一 表示這是乙個指標變數,表示乙個變數的位址。二 與 的區別 int a p a 此處 p就是先執行 p,即去取p所指位址的值,相當於 p取出變數a,再進行取位址操作,p即取出a的位址,相當於 a.此處 a就是就是先計算 運算,即先取出a的位址,然後進行 運算,取出位址上的值,即變數a。三 一維陣列...
C語言指標筆記
1 指標本身也是乙個變數,儲存的是另乙個變數的位址 2 使用指標的好處 增加訪問資料的手段,使程式更加的靈活 3 所有的指標變數都是占用4個位元組 32位 4 訪問指標所指向的變數的兩種方式 int a 5 int p a printf d n a 1.通過變數名直接訪問 printf d n p ...
c語言指標筆記
一.int a 20 1.陣列名代表陣列首元素的位址,不代表陣列的位址 2.對陣列名取位址代表整個陣列的位址.a和 a代表的資料型別不一樣 a代表陣列首元素的位址 a陣列型別 int 20 型別 陣列的型別由元素的型別和陣列大小共同決定 如 int array 5 的型別為int 5 陣列型別 ty...