c++ const修饰指针
const修饰指针有三种情况
- const修饰指针 --- 常量指针
比如下面例子:
int a = 10; int b = 10; //const修饰的是指针,指针指向可以改,指针指向的值不可以更改 const int * p1 = &a; p1 = &b; //正确,指针的地址可以更改 *p1 = 100; //报错,指针指向的值不可更改
2.指针常量
const修饰的是常量,指针指向不可以改,指针指向的值可以更改
//const修饰的是常量,指针指向不可以改,指针指向的值可以更改 int * const p2 = &a; //p2 = &b; //错误 *p2 = 100; //正确
3. const即修饰指针,又修饰常量
示例:
//const既修饰指针又修饰常量 const int * const p3 = &a; //p3 = &b; //错误 //*p3 = 100; //错误
技巧:看const右侧紧跟着的是指针还是常量, 是指针就是常量指针,是常量就是指针常量。比如:const int *p=a;这叫做常量指针,可以拆分出来看const(常量), *p(*为解析符号,*p就是将指针P进行解析出值),所以联合起来可以理解成常量指针中值不能变(因为const修饰了*p,),指针的指向可以变。
1
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 字符编码:从基础到乱码解决
· 提示词工程——AI应用必不可少的技术