“常量指针“和”指针常量“辨析

目录

一、声明定义

二、解析说明


一、声明定义

指向常量指针变量——const int* p

指向变量指针常量——int* const p

指向常量指针常量——const int* const p

二、解析说明

先找到*,然后看*的两边,右边是对指针p所指向的地址的限定,左边是对p所指向的地址中的内容的限定

1.const int *p

      *的右边没有限定成分,表明p就是普通指针,p的内容(即它指向的地址)是可以改变的;*的左边是const int,表明p指向的地址中内容是一个const的int,不能通过p来修改这个int,因为它是const的。(例如:*p = 50,是不可以的)

2.int* const p

      *的右边是const,表明p自身是const,不能对p的内容进行修改(例如++p;是不可以的),*的左边是int,即p指向的地址中的内容是普通的int,我们可以通过p来修改它(例如*p=100;是可以的)。

3.const int* const p

      *的右边是const,表明指针p自身是const的,*的左边是const int,表明p指向的int也是const的。即这种情况下,p自身不能修改,同时也不能通过p修改它所指向的地址中那个int的变量的值。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值