1.指针变量存储的是它指向的是数据变量在内存中的存储地址,而内存地址的格式都是一样的,也可以说成是内存地址的数据格式相同,占用的存储大小相当,那为什么指针变量在声明的时候还需要说明数据类型呢?
int a= 10, *pa;
pa = &a;
经过上面的代码之后,在内存中达到的效果如下所示:(假设存储地址类似ffc0,ffc1....)
变量 | 存储地址 | 存储空间 |
a | ffc1 | 10 |
*pa |
ffc9 | ffc1 |
上面的表格模拟内存存储的情况,可以看出,int型的变量a的存储地址是ffc1,是指向它的指针变量pa存储空间的内容,而指针变量本身在声明的时候系统也会分配一块