天天看點

《零點起飛學C語言(康莉)》讀書筆記七

第九章 指針

1.指針是一種資料類型,用來表示記憶體位址。

2.變量的指針值就是變量的位址。存放變量位址的變量就是指針變量。

3.每個變量都有兩個屬性:變量位址和變量值。

4.指針存儲的數值必須是記憶體空間的一個有效位址,指向所需要的變量。

5.指針變量定義由兩部分組成:基類型和指針操作符。

6.定義指針變量的标準形式:

基類型* 指針變量名;

7.定義指針變量時,一般将指針操作符放在靠近變量名的位置。

8.指針的運算實質是位址的運算。

9.取位址運算-&

int *p;

&p表示存儲變量p的記憶體位址。

10.取内容運算-*

int a,p=&a;

*(&a)就是a,&(*p)就是p。p指向a,*p與a等價。

11.*p++:”*”與”++”優先級相同,從左向右。

12.指針數組:

類型辨別 *數組名[數組長度];

13.int *p[5]和int (*p)[5]是不同的,

int (*p)[5]是一個指向整型一維數組的指針。

14.指針數組是數組,數組指針是指針。

15.函數指針:

類型辨別符 (*指針變量名)();

指向函數指針的指派可以采用如下形式:

指針變量名=函數名;

16.通過函數指針調用函數:

*指針變量名)(實參清單);

17.指針的指針

類型辨別符 **指針變量名;

18.*運算是從右向左結合,**p相當于*(*p)。

繼續閱讀