读书人

指针与引用解决思路

发布时间: 2012-02-28 13:06:36 作者: rapoo

指针与引用
#include <iostream.h>
void main()
{

int a,*pa;
int &ra=a;
ra=10;
pa=&ra;
*pa=ra;
cout < < "&a: " < <&a < <endl < < "&ra " < <&ra < <endl < < "&pa " < <&pa < <endl < <*pa;
}
为什么&pa的内存地址同&ra不同

[解决办法]
int a, *pa;
a=2 ;
//&a=:0012F304
int &ra=a ;
//&ra=:0012F304
ra=10;
//pa=:74B26020
//&pa=:0012F300
pa=&ra;
//pa=:0012F304
//&pa=:0012F300
*pa=ra ;
//*pa=10
//pa本身就是一个指针,:0012F300是该指针pa的地址 而:0012F304是pa指针指向的地址
//楼主你取的地址是pa自身的地址&pa,当然跟&ra不同了

读书人网 >C++ Builder

热点推荐