指针常量与常量指针

5 篇文章 0 订阅
本文详细解释了C++中constpointer(常量指针)和pointertoconst(指针指向常量)的概念,通过实际代码演示它们在声明和使用上的区别。理解这两个概念有助于避免编译错误并提升代码可读性。
摘要由CSDN通过智能技术生成
英文含义声明(int为例)中文
const pointer指针指向不可以改变int *const p常量指针
pointer to const指针指向的值不可以改变const int * p; int const *p指针常量

上面表里的含义和声明大家应该都没什么问题。但是,网上很多帖子中,const pointer翻译成了指针常量,pointer to const 翻译成了常量指针,刚好与上表中反了过来。从《C++ Primer 第五版》第56页中可以得到答案:
在这里插入图片描述

“Talk is cheap. Show me the code.”

int main()
{
    int a = 0;
    int b = 1;
    int* const p = &a; // 常量指针
    // p = &b; // 编译不通过
    *p = 2; // 编译能通过
    const int* q = &b; // 指针常量
    //*q = 3; // 编译不通过
    q = &a; // 编译能通过
    return 0;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值