1).任何类型的指针在32位机器下,大小为4个字节.
int *p; int size = sizeof(p);
printf("%d\n",size); 输出结果为---->> 4.
2).type *p = NULL;
指针的本质:是一个有类型的地址,类型用来干嘛呢,就是决定了这个指针每次跨越的步长.地址就是存放了其他变量的地址,达到间接引用的效果.(普通变量可直接访问内容)
假如现在p存的地址为0,即p+1 步长走了type类型在内存中占的字节.打印结果为printf("%d\n",p+1); --->> sizeof(type)
3 ).容易混乱的点:
type *p;
&p 是对p这指针变量取地址,这时可间接的改变p里面存放的内容,即指向其他变量的地址,为什么说指向呢?因为他里边放了其他地址了.
p 就是直接对p取值,也就是取出了p里边值,这个值是一个16进制的内存地址值.