基本概念
1、指针常量:指针常量就是指针本身是常量,换句话说,就是指针的值(内存地址)是常量,不能改变。但是,内存地址所对应的内容是可以通过指针改变的。
2、常量指针:指向常量的指针,换句话说,就是指针指向的是常量,它指向的内容不能发生改变(注意:不能通过指针来修改它指向的内容,而可以通过原来的声明修改)。但是,指针自身不是常量,它自身的值可以改变,从而指向另一个常量。也称为指向常量的指针。
声明
1、指针常量:数据类型 * const 指针变量 eg:int * const p;
2、常量指针:数据类型 const * 指针变量 或者 const 数据类型 *指针变量 eg:int const * p; 或者 const int *p;
3、常量指针常量:数据类型 const * const 指针变量 或者 const 数据类型 * const 指针变量 eg:int const * const p; 或者 const int * const p;
C++
c++中的const修饰的量叫常量,在c++中,声明常变量时必须初始化。
const int a = 0; //正确
const int b; //错误
int * const p = &a; //错误