15.指针的基本概念.md 1.4 KB
Newer Older
极客江南's avatar
极客江南 已提交
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
## 指针基本概念

- 什么是地址

+ 生活中的地址:
  ![](https://img-blog.csdnimg.cn/img_convert/9485373b7cb46f41f6c996303419ba4c.png)
+ 内存地址:
  ![](https://img-blog.csdnimg.cn/img_convert/e46d975be9e95178136726209b2c237f.png)

- 地址与内存单元中的数据是两个完全不同的概念

+ 地址如同房间编号, 根据这个编号我们可以找到对应的房间
+ 内存单元如同房间, 房间是专门用于存储数据的

- 变量地址:

+ 系统分配给"变量"的"内存单元"的起始地址

```c
int num = 6; // 占用4个字节
//那么变量num的地址为: 0ff06

char c = 'a'; // 占用1个字节
//那么变量c的地址为:0ff05
```

![](https://img-blog.csdnimg.cn/img_convert/13eb965757dd130d813a953506335b89.png)

---

## 什么是指针

- 在计算机中所有数据都存储在内存单元中,而每个内存单元都有一个对应的地址, 只要通过这个地址就能找到对应单元中存储的数据. 
- 由于通过地址能找到所需的变量单元,所以我们说该地址指向了该变量单元。将地址形象化的称为“指针”

- 内存单元的指针(地址)和内存单元的内容是两个不同的概念。
  ![](https://img-blog.csdnimg.cn/img_convert/540000371e0da0fb105248642ef9db24.png)



最后,如果有任何疑问,请加微信 **leader_fengy** 拉你进学习交流群。

开源不易,码字不易,如果觉得有价值,欢迎分享支持。