指针常量和常量指针的区别

指针常量和常量指针的区别:

方向和值

指针常量 [char * const p]

  • const修饰的是[p],[p]为地址,存放的地址[p]变成常量不可改。但是存放的值[*p]存放的值可以变。
  • (方向不能变,值可以变。限制p,限制方向)

常量指针 [char const *p]

  • const修饰的是[*p],[*p]为值,存放的值[*p]为常量不可改。但是指针变量[p]存放的地址可以改。
  • (方向可以变,值不可以改。限制*p,限制值)

/指针常量的例子,就是指针本身是常量/
int a,b;
int * const p;
p = &a;//错误
p = &b;//错误
*p = 20;//正确

/常量指针的例子,就是指向常量的指针/
int a,b;
int const *p;
p = &a;//正确
p = &b;//正确 *
*p = 20;//错误

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值