指针

指针的定义和int、char、float等数据类型并无差别,本质上是一种数据类型,但存储的数据较为特殊、存放的是个地址。大家可能又要问了,那地址又是什么呢?在计算机中,所有的数据都是存放在存储器中的。 一般把存储器中的一个字节称为一个内存单元, 不同的数据类型所占用的内存单元数不等,如int 类型占2个单元,char类型占1个单元, 为了正确地访问这些内存单元,也就是访问这些类型的数据, 必须为每个内存单元指定一个编号。 根据一个内存单元的编号即可准确地找到该内存单元。内存单元的编号就叫做地址。

如图
在这里插入图片描述

我们按照内存单元的编号(也就是地址)就可以找到所需的内存单元,所以通常也把这个地址称为指针。

在这里插入图片描述

可以用一个讲一个来生活中的例子来说明它们之间的关系:


我们到酒店去吃饭的时候, 酒店工作人员将根据我们的订单上的房间号去找我们的房间, 在这里,订单上的房间号就是房间的地址(也就是内存上的地址)、订单就是指针(它本身也是一个变量)、订单上的值为地址的值(也就是指针存储的是地址)、 房间里面的东西是房间的内容(也就是我们存储变量的内容)。

因此, 一个指针变量的值就是某个内存单元的地址或称为某内存单元的指针。严格地讲,一个指针是一个地址, 是一个常量。而一个指针变量却可以被赋予不同的指针值,是变量。 “指针”是指地址, 是常量;“指针变量”是指取值为地址的变量。
我们一定要明白定义指针的目的是为了通过指针去访问内存单元。去获取、操作里面的值


对于一个内存单元来说,单元的地址即为指针, 其中存放的数据才是该单元的内容。
内存单元的指针和内存单元的内容是两个不同的概念。我们以大家熟悉的几种数据类型来进行讲解:**

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值