指针常量和常量指针是指针的两种不同标记方式。常量指针是指一个指针变量本身的值不可修改,即指针指向的内存地址是固定的,但是可以通过该指针修改指向的数据。
指针常量和常量指针是指针的两种不同标记方式。
指针常量(pointer to a constant)是指一个指针变量指向的内存地址不可修改,即指向的数据是常量,但指针本身是可以修改的。
常量指针(constant pointer)是指一个指针变量本身的值不可修改,即指针指向的内存地址是固定的,但是可以通过该指针修改指向的数据。
具体区别如下:
- 指针常量:指针本身可以修改,指向的数据不能被修改。
- 常量指针:指针本身不可修改,指向的数据可以被修改。
示例:
```C++
const int* p; // 声明一个指针常量,p的值可以修改,指向的数据不可修改
int* const p; // 声明一个常量指针,p的值不可修改,指向的数据可以被修改
const int* const p; // 声明一个指针常量,p的值不可修改,指向的数据也不可修改
```