p是指针, a是变量。 所以 &a, 或者p,或者&p, 都是地址。
A里面 a不是地址。 *&a等效于a 也不是地址 。
B里面 *a本身就是非法的。 &*a属于非法表达式。 *p是值,不是地址。
C里面 *p不是地址,而是值。 注意 *&p 等效于p, 这个是地址。
D里面 &a &*p和p都是地址。 这里 &*p等效于p。
int *p 是定义一个指针,p=&a ,p指向a的地址,*p=a, *指针名 是指取该指针所指地址中的内容,
&a 为a的地址,&*p=&a,p中放的为a 的地址