指標變數的值
「指標變數的值」是指標本身儲存的數值,這個值將被編譯器當作乙個位址,而不是 乙個一般的數值。在32位程式裡,所有型別的指標的值都是乙個32位整數,因為32位程式裡記憶體位址長度都為32位。「指標所指向的記憶體區「就是從指標的值所代表的那個記憶體位址開始,長度為sizeof(指標所指向的型別)的一片記憶體區。
乙個指標的值是a,即是說該指標指向了以a為首位址的一片記憶體區域;反之,說乙個指標指向了某記憶體區域,即是說該指標的值是這塊記憶體區域的首位址。
指標的運算
指標可以進行一些運算,但並非所有的運算都是合法的,指標的運算主要侷限在加減算術和其他一些為數不多的特殊運算。
p=&a:將變數a的位址賦給p
p=array:將陣列的首位址賦給p
p=&array[i]:將陣列元素的位址賦給p
p=p1:將指標p1所指向的位址賦給p
使用遞增/遞減運算子(++ 和 --)將指標遞增或遞減
乙個型別為 t 的指標的移動,
以 sizeof(t)為移動單位。
注意:不能將指標的值賦給乙個整型變數,也不能將乙個整數賦給指標
C語言學習筆記 指標
若觸過組合語言,那麼理解學習c語言中指標就很簡單了。指標,在彙編裡面的表現形式,無非就是定址,直接定址和間接定址。先來學習下,c語言中的4大類資料型別 基本型別 int,long,float,char 構造型別 陣列,結構體 struct,聯合體 union,列舉型別 enum 指標型別 int l...
C語言學習筆記 指標
c語言要玩的好,指標是核心,但是指標在學習的時候看教程往往感覺一看就明白,但是實際用的時候一用就錯,而且還不知道錯在哪。為了更加深刻的了解指標,將學習過程記錄下來,依次加深對指標的理解。先看看一段測試 void fun void int main void 定義乙個變數a,值為100,然後定義乙個一...
C語言學習筆記 指標
get新知識 1 指向二維陣列的指標,如指向int a 3 4 的指標int p 4 p指的是第0行第乙個位址 注意是位址 p 1 指的是第1行第乙個位址,以此類推 p i j 表示第i行第j列的元素。二維陣列本質也是一維陣列。每一行相當於乙個元素。2 指向函式的指標 作用 可以作為另乙個函式的引數...