p什么意思,*&p是什么意思

你要先明白這種情況

p什么意思,*&p是什么意思

文章插圖
int
a=10;
int
p=a;
這種情況,p與a是不同的變量p什么意思,這里是將a的值賦給p
int
【p什么意思,*&p是什么意思】&p=a;

p是a
的別名,p和a其實是同一個整形變量,兩個占用同一塊內存空間,如果有
p=15;那么a也是15,修改p與修改a是完全等價的
那么
int
*a;
int
*
&p=a;
很容易理解,把
int
*
看成一個類型,a就是一個整型指針,p
是a的別名
int *p;這樣才是定義指針單獨的*p是解引用int *q=0;int *&p=q;這是定義一個int指針的引用如果是這樣:int p=5;*&p;這是先對p取址,再對&p解引用,獲得p的值 。不過通常不會這樣多此一舉