int *&p
从右往左结合,&p是一个引用, *(&p)是一个指针,
int *&p是指向一个int型的指针的引用;
int &*p
从右往左结合,p是一个指针,&(p)是一个引用,
int &*p是指向一个int型引用的指针,但是引用本身不是一个对象,
因此不能指向引用的指针。
int p = &a;
//这里的号是一个标记,一个指针的地址
//在 p 指针变量里面,放了a的存储地址
//可以通过访问
int *q;
*q = &a; ❌
q= &a; ✔
//定义时,*号只对p有效果,q还是整型不是指针;
int *p=&n,q;
//在定义p指针变量时,将其指向n
int n,*p=&a;