- int a=3;
- &a 指的是计算机给变量a开辟的空间地址
- 空间地址里面的内容是3
即*(&a)=3
- int *p;
- &p 指的是计算机给指针变量p开辟的空间地址
- p 的值是一个地址,所以空间地址里面的内容是一个地址
- p=&a 把变量a的地址赋值给p 指针变量p的内容是a的地址
- *p 是取p所指的地址(a的地址)指向的值 就是a的值 *p=3
最后练习一下:
int *a=null;
int b=3;
a=&b ;
假设计算机给a开辟的空间地址为4001,给b开辟的空间地址为4002
求 *a , a , &a , &(*a) , b , &b
*a=3
a=4002
&a=4001
&(*a)=4002
b=3
&b=4002