指针:就是内存资源的地址、门牌号的代名词
假如你所在的城市是一个内存(存储器),如果找到你家,就是通过你的家庭住址(指针)寻找,而你家里的摆设面积之类的就是内存的内容(指针指向的内容)。
指针变量:存放指针这个概念的盒子
c语言编译器对指针这个特殊的概念,有两个疑问?
1. 分配一个盒子,盒子要多大??
在32bit系统中,指针就4个字节
在64bit系统中,指针就8个字节
可以看出一个系统中,所有指针的内存大小是一样的!
2. 盒子里存放的是地址,所指向内存的读取方式是什么?
我们一般看到
int * p //表达的是,指针p,她是以int4个字节的方式读取地址,也就是一次性读取四个字节。
同理 char * p //指针p,一次性读取1个字节。
这个 int * 或者 char * 可以理解为数据模子
指针指向内存空间,一定要保证合法性。