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