c++ ,解释一下程序的运行结果

来源:百度知道 编辑:UC知道 时间:2024/06/11 11:19:45
#include <iostream.h>

void main()
{
int a[]={10,20,30,40},*pa=a;
int *&pb=pa;
pb++;
cout<<*pa<<endl;
}

20

pb是pa的引用,改变pb就是改变pa
pb++ => pa=pa+1 =>pa=&a[1] =>*pa=20

这个好像是指针型的引用吧,所谓的引用就是说等于另一个变量的别名,像你上面的,PB就成了PA的一个别名,简单地说,PB跟PA是一体的,所以PB地址前移了,PA也同样跟着前移。
因此是20。