c++学习笔记-----const指针

1.指向常量的指针:

在指针定义语句的类型前加const,表示指向的对象是常量。

const int a = 78;

const int *pi = &a;

*pi = 89;  //错误做法,不能修改指针指向的值

 pi = &b;  //ok,指针值可以修改,可以将另一个常量值b的地址赋给pi

 pi = &c;  //ok,指针值可以修改,可以将一个变量值c的地址赋给pi

指针常量定义“const int * pi = &a”告诉编译器,*pi是常量,不能将*pi作为左值进行操作。

2.指针常量

在指针定义的指针名前加const,表示指针本身是常量。

char *const pc = "asdf";

pc = "dfgh";//错误,指针常量不能改变其指针值

*pc = 'b'//ok,pc的内容现在为bsdf

const int b = 28;

int * const pi = &b;//错误,不能将const int *转变为int *

定义“int * const pc = &b;”告诉编译器,pc是常量,不能作为左值进行操作,但是允许修改间接访问值,即*pc可以修改

3.指向常量的指针常量

const int *const pi = &b

定义告诉编译器,pi和*pi都是常量,不能作为左值进行操作。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

孙仲谋111

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值