<strong><span style="font-size:14px;">指针</span></strong>
1.定义
C++中专门用来存放内存单元地址的变量类型
2.指针变量的声明
声明指针时要明确指出它存放的是什么数据类型的地址。//int *ptr;
在声明是要指定数据类型的原因:1.ptr所指向的对象的内存空间与数据类型有关,如short、int、double等
2.指针变量的运算规则与它所指的对象类型相关
3.*和&的区别
* | & | |
定义 | 指针运算符(解析) | 取地址运算符 |
功能 | 获取指针所指向变量的值 | 取变量存储单元的地址 |
4.指向常量的指针与指针类型的常量
指向常量的指针:
int a;
const int *p=&a;
int b=1;
p=&b;//通过,p本身的值可以改变
*p=1;//出错,p指向的对象值不能改变
指针类型的常量:
int *const p=&a;
p=&b;//错误,p是指针常量,值不能改变
5.void指针
一般情况下相同类型的指针才可以进行赋值。void指针时特殊的指针,它可以存放任何数据类型的地址,也就意味着一般数据类型的指针都可以给void类型进行赋值,而通过显示转换void数据类型的指针也可以转换成普通数据类型的指针。
注意:不能声明void类型的变量,但是可以声明void类型的指针。