您的位置:首页 > 其它

指针常量和常量指针

2013-05-09 11:52 218 查看
大家先不要纠结你写的代码中包含的是指针常量,还是常量指针。先理解自己的代码。

先看看这几种声明方式:

int *pi1;
int* pi2;


这两种声明方式的结果都是一样的,pi1和pi2都是整型指针,所谓整型指针,就是指向整数数组首地址的指针变量。其实int*和int *描述的都是某个变量,标示某个变量的属性。

继续往下看

int const *pid1;
const int *pid2;


这两个声明,其实结果一样,首先pid1和pid2都是指针, (*pid1)和(*pid2)都具有int属性,所以两个指针都是整型指针,有因为加了const属性,所以(*pid1)这个整数不可以被修改。
这个就是常量指针。

在看看下面的声明

int * const pid;


首先pid是个指针,然后修饰pid的修饰符是const,所以pid的内容不可以修改,也就是说他只能被存放一次,而且是在声明的时候初始化。

这个就是指针常量。

总结一下:

指针常量就是本身是常量的指针。

常量指针就是指向常量的指针。

其实明白了上面的解释,大家就不必在意什么常量指针,指针常量了。用对就可以了。。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: