*p和*&p 有什么區(qū)別?
#include<stdio.h> #include<iostream> using?namespace?std; int?main(void)? { int?a=10; int?*p=&a; int?*&q?=?p; cout?<<?"p的按地址求值"<<*&p<<?endl; cout?<<?"p的直接求值"?<<?*p?<<?endl; cout?<<?"p的地址的值的值"?<<?**&p?<<?endl; system("pause"); return?0; }
2016-07-05
*p 表示的就是一個指針,而&p表示變量p的地址對于上面的程序來說&p!=&a,上面的程序指針*p指向a的地址
此時p的值為a的地址*p的值相當(dāng)于指向a的地址引用(可理解為a存儲的值),而當(dāng)*&p時相當(dāng)與對a進(jìn)行了取地址此時*&p = &a;
2016-07-02
將一個指針空間p賦給 q地址的值?
2016-07-02
&是取地址符號,*是取指針里面的值,*&p是先去指針p的地址值之后再按地址值取值。*p是直接去指針里的值。