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