第九章 指針
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)。