您的位置:首页 > 其它

如何区分指针常量与常量指针,个人的一点小建议

2014-12-29 23:28 267 查看
首先:

1、常量指针:

int const * pa;

const int *pb;

由内向外分析:首先看变量名pa,离它最近的是*,所以是它一个指针,再往外分析就可以看出它指向一个Int常量。

所以pa可以修改所指向的地址,但是不能修改它指向对象的值。

int a1 = 0;

int const *pa; //定义是不必初始化

int const *pb = &a1;

常量指针:顾名思义:常量修饰指针,指向常量的指针;

2、指针常量:

int * const pc;

由内向外分析:首先看变量名pc,离它最近的是const,所以是它一个常量,再往外分析就可以看出它是一个int型指针。

所以pc不可以更改它指向的地址,但是可以更改它所指向的对象的值。

int a2 = 0;

int const *pb; //Error 定义是必须初始化

int const *pc = &a2;

指针常量:顾名思义,指针修饰常量,一个是指针的常量
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: