指针 & const 的组合

1、首先来了解一下常量

const int num = 5;
那么num的值是5, num的值不可修改

2、来了解一下指针

int value = 5;
int* p = &value;
我喜欢吧指针和类型放一起,来强调p是一个指针类型, 而赋值的时候就得赋值一个int类型的地址。
p的地址和value的地址一样,那么 *p 是 5。

3、指针(本身是一个)常量

一个指针本身是常量,也就是说该指针他指向的地址不可以修改
int value = 5;
int* (const p) = &value;
为了方便理解,再cosnt p 加上括号, 代表p本身不可改变,举个通俗的例子,指针就是一个房产证,这个证代表你的房子位置是固定的,你可以随意布置房子。
在这里插入图片描述

4、指针(所指向的是一个)常量

顾名思义:他是一个常量,用一个指针指向该常量,所以该指针他指向的地址里的内容是不可以修改的

const int num = 5;
(const int) *p = #
为了方便理解,在const int 加上括号,代表 *p 不可修改。举个通俗的例子,就是有一本房产证,该房产证的地址你随意更改,但是房子里啥都不能改,相当于你可以随意把你的家移动到某个地址。
在这里插入图片描述

5、指针本身是一个常量&& 所指向的数据也是一个常量

const int value = 5;
(const int) * (const p) = &value;

代表p 本身不可修改 && *p 也不可修改

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值