const修饰指针时候的注意事项

const修饰指针的时候分四种情况:

1.const int* p;   这种情况下叫做  指向常量的指针,顾名思义,p指针指向的东西是个常量,而本身没什么限定,是可以变的。总结说:P可变,P指向的内容不可变


2.int const* p;   这种情况和第一种情况是一样的,P可变,P指向的内容不可变


3.int * const p; 这种情况下叫做 常量指针,顾名思义,指针p是个常量,所以p不可变,但是p指向的内容可变。总结说:p不可变,p指向的内容可变


4.const int* const p;这种情况叫做 指向常量的常量指针,顾名思义,指针p是个常量,p指向的内容也是个常量。总结说:p和p指向的内容都不可变


技巧:像const int* p可以看成 (const int*) p,很容易就想到这是个指向常量的指针;像int* const p可以看成(int*) const p,想成const直接修饰p,很容易想到这是个常量指针。(注:这里的括号并不是强制转换类型符,这是为了看得清楚而已)。


口诀 :左数(常量)右指(常量)

当const出现在*号的左边时指针指向的数据为常量

当const出现在*后右边时指针本身为常量

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值