從語法的角度看, 你只要把指標宣告語句裡的指標名字去掉, 剩下的部
分就是這個指標的型別。 這是指標本身所具有的型別。 讓我們看看例一中各
個指標的型別:
(1)int*ptr;//指標的型別是 int*
(2)char*ptr;//指標的型別是 char*
(3)int**ptr;//指標的型別是 int**
(4)int(ptr)[3];//指標的型別是 int()[3]
當你通過指標來訪問指標所指向的記憶體區時, 指標所指向的型別決定了
編譯器將把那片記憶體區里的內容當做什麼來看待。
從語法上看, 你只須把指標宣告語句中的指標名字和名字左邊的指標聲
明符*去掉, 剩下的就是指標所指向的型別。 例如:
(1)int*ptr; //指標所指向的型別是 int
(2)char*ptr; //指標所指向的的型別是 char
(3)int**ptr; //指標所指向的的型別是 int*
(4)int(*ptr)[3]; //指標所指向的的型別是 int()[3]
(5)int*(ptr)[4]; //指標所指向的的型別是 int()[4]
int arr[10] = ;
int(*p)[10]; //這裡定義了乙個指標,指向的是乙個10個元素的陣列。
p = &arr;
int temp = *p[0]; //這裡首先取盤p[0],然後取*p[0] 結果是1.
int temp2 = **p;
printf("the first value is %d\n", **p); //這裡首先*p指向arr,然後*(
*p)指向了arr[0]
printf("the first value is %d\n", *(
*p+1));//這裡首先*p指向arr,然後*(
*p+1)指向了arr[1]
int max(int
x, int
y)void main()
C語言系列筆記 指標
指標變數的本質是用來放位址的,而一般的變數是放數值的。例題 int p a p a 請問p 和 p 的數值分別為多少?p 這個本身的數值為1,由於是位址會增加1,所以指標指向數值3了。p 這個本身的數值為1.由於有個 表示數值會增加,指標不移動,但數值1由於自加了一次變成2。例題 int x 7 i...
IOS開發系列 C語言之指標
指標是c語言的精髓,但是很多初學者往往對於指標的概念並不深刻,以至於學完之後隨著時間的推移越來越模糊,感覺指標難以掌握,本文通過簡單的例子試圖將指標解釋清楚,今天的重點有幾個方面 什麼是指標 陣列和指標 函式指標 存放變數位址的變數我們稱之為 指標變數 簡單的說變數p中儲存的是變數a的位址,那麼p就...
IOS開發系列 C語言之指標
本文 kenshin cui s blog 指標是c語言的精髓,但是很多初學者往往對於指標的概念並不深刻,以至於學完之後隨著時間的推移越來越模糊,感覺指標難以掌握,本文通過簡單的例子試圖將指標解釋清楚,今天的重點有幾個方面 什麼是指標 陣列和指標 函式指標 存放變數位址的變數我們稱之為 指標變數 簡...