新闻资讯

质量为本、客户为根、勇于拼搏、务实创新

< 返回新闻资讯列表

C++中指针常量与常量指针的不同是什么

发布时间:2023-08-16 07:51:55

C++中指针常量与常量指针的不同是甚么

在C++中,指针常量和常量指针是区分的概念。
1. 指针常量(Pointer to constant):指针本身是一个常量,即指针的值不能被修改,但是它所指向的值可以被修改。声明一个指针常量时,要在指针类型前加上const关键字。
示例:
```cpp
int num = 10;
const int* ptr = #
*ptr = 20; // 毛病,没法修改ptr所指向的值
ptr = nullptr; // 正确,可以修改ptr的值
```
2. 常量指针(Constant pointer):指针所指向的值是一个常量,即指针指向的值不能被修改,但是指针本身的值可以被修改。声明一个常量指针时,要在指针名字前加上const关键字。
示例:
```cpp
int num = 10;
int* const ptr = #
*ptr = 20; // 正确,可以修改ptr所指向的值
ptr = nullptr; // 毛病,没法修改ptr的值
```
总结:
- 指针常量是一个常量指针的值不可修改,所指向的值可以修改;
- 常量指针是一个指针指向的值不可修改,指针本身的值可以修改。