首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

指针的引用当做函数参数的有关问题

2013-03-22 
指针的引用当做函数参数的问题#include iostreamusing namespace stdvoid print(intp, int q){coutp

指针的引用当做函数参数的问题
#include <iostream>
using namespace std;

void print(int  p, int q)
{
    cout<<p<<"   "<<q<<endl;
}
void set(int* &p,int *q)
{
    *p=100;
    *q=200;
}
int main()
{
    int a=10,b=20;
    int *pa,*pb;
    
    pa = &a;
    pb = &b;
    
    cout<<&a<<"    "<<&b<<endl;
    print(a,b);
    cout<<pa<<"    "<<pb<<endl;
    set(pa,pb);
    print(a,b);
}
打开监视窗口,
 a=(int)10
 b=(int)20
 pa=(int*)0x00007fff5fbff85c
  *pa=(int)10
 pb=(int*)0x00007fff5fbff858
  *pb=(int)20
 q=(int*)0x00007fff5fbff858
  *q=(int)200
 p=(int*&)0x00007fff5fbff850
  &p=(int*)0x00007fff5fbff85c
  *&p=(int)100

这是变量在内存的地址,pb和q的地址好理解,就是一样的,但是pa和p的关系,我不是很理解,p是pa的引用,所以是同样的地址和数值,但是p=(int*&)0x00007fff5fbff850这块我就不懂了,为什么又分配了一块内存??求达人

[解决办法]
p=(int*&)0x00007fff5fbff850
这个是指向指针的指针了  存指针的地址

热点排行