一方面t,p都是同一类型,你一个加&一个不加什么意思另一方面要分清值和地址得区别根据p的类型,它存放的是一个指向Studen的指针,它的值它的值它的值,例如如果它的值是0x100,那表示有一个Student存放在0x100处,它是指向这个Student的。但是 p本身可能是存放在0x400处的t=p;看代码的意图,是把p指向的Student传给t, 所以如果你t=&p,那么就错误的把0x400传给t了