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

  1. 常量指针 和 指针常量的区别:
    1. * (指针)和 const(常量) 谁在前先读谁 ;
    2. *象征着地址,const象征着内容;谁在前面谁就不允许改变。
  2. int a =3;
    int b = 1;
    int c = 2;
    int const *p1 = &b;//const 在前,定义为常量指针
    int *const p2 = &c;//*在前,定义为指针常量 

    说明:

     

    1. 常量指针p1:指向的地址可以变,但内容不可以重新赋值,内容的改变只能通过修改地址指向后变换。   
      •     p1 = &a是正确的,但 *p1 = a是错误的。
    2. 指针常量p2:指向的地址不可以重新赋值,但内容可以改变,必须初始化,地址跟随一生。
      •     p2= &a是错误的,而*p2 = a 是正确的。

常量指针:

  • 定义:具有只能够读取内存中数据,却不能够修改内存中数据的属性的指针,称为指向常量的指针,简称常量指针。
  • 注:可以将一个常量的地址赋值给一个对应类型的常量指针,因为常量指针不能够通过指针修改内粗数据。只能防止通过指针引用修改内存中的数据,并不保护指针所指向的对象。
  • 声明:const int * p; int const * p;
  •  

指针常量

  • 定义:指针常量是指指针所指向的位置不能改变,即指针本身是一个常量,但是指针所指向的内容可以改变。
  • 注:指针常量必须在声明的同时对其初始化,不允许先声明一个指针常量随后再对其赋值,这和声明一般的常量是一样的。
  • 声明:int * const p=&a;

参考:https://blog.csdn.net/Beyond0525/article/details/7409305

https://blog.csdn.net/weibo_dm/article/details/80445205

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

帅气滴点C

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

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

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

打赏作者

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

抵扣说明:

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

余额充值