1、const 关键字出现在 * 的左边:指针指向的内容不能被修改。
2、const 关键字出现在 * 的右边:指针本身不能被修改。
3、const 关键字出现在 * 的两边:指针指向的内容和指针本身都不能被修改。
#include
usingnamespace std;
int main()
{
int a=1;
int b;
/**指向const的指针,指针指向的内容不能被修改**/
constint*p1;
intconst*p2;
/**const指针,指针本身不能被修改,必须初始化**/
int*const p3=&a;
/*指针本身和它指向的内容都是不能被改变的所以也得初始化*/
constint*const p4=&a;
intconst*const p5=&b;
p1=p2=&a;//true (指针本身的值可以改变)
*p1=*p2=8;//false(指针指向的内容不能被修改)
*p3=5;//true (指针指向的内容可以改变)
p3=p1;//false(指针本身的值不能改变)
p4=p5;//false(指针本身和它指向的内容都是不能被改变)
*p4=*p5=4;//false(指针本身和它指向的内容都是不能被改变)
return0;
}