指针用来干什么?
指针可以用来表示一些复杂的数据结构,而数组表示同一类关系的数值,而无法表示一些复杂关系,比如说树,图;
快速的传递数据;
使返回一个以上的值;
可以直接访问硬件;
能够方便的处理字符串;
是理解面向对象语言中“引用”的基础;
总结:指针是C语言中的灵魂
指针的定义
地址:
内存单元的编号
从零开始的非负整数
范围:对于32bit机器,范围是[0——4G-1] 4G只是个理论值,2^32B=4GB,具体可以支持多大内存还是要视系统或者机器技术的能力。
CPU控制内存条通过控制线和数据线和地址线的,内存条分为许多基本单元(格子)。
先把内存条中数据读入CPU,然后CPU写入内存条
控制线用于控制读还是写
数据线用于数据的传输
地址用于确定内存条的具体单元
指针的分类
- 基本类型指针
int * p;p = &i
- 指针和数组
- 指针和函数
- 指针和结构体的关系
- 多级指针