空指针NULL、野指针、通用指针
什么是指针
假设 有语句
int a=10;
那么编译器就在内存中开辟1个整型单元存放变量a,我们假设这个整型单元在内存中的地址是 0x1000
;那么内存0x1000
单元中存放了数据10
,每次我们访问a的时候,实际上都是访问的0x1000
单元中的10
.
现在定义:
int *p;
p = &a;
当编译器遇到语句int *p
时,它也会在内存中给指针变量p分配一个内存单元,假设这个单元在内存的编址为0x1003
;此时,0x1003
中的值是不确定的,(因为我们没有给指针赋值),当编译器遇到了p = &a
时,就会在0x1003
单元中保存0x1000
,请看,这就是说:&#