C++问题 int a=1,b=10 int&r=a int*p=&b;*p=r++; 求a,

2025-04-08 02:06:24
推荐回答(2个)
回答1:

&r=a,给a起一个别名叫r,r就是a,a就是r。
r++后缀符号,先赋值后加减。
*p=r++的意思就是*p=r,r=r+1。
所以*p=1,r=2。即a=2,b=1

回答2:

int &r=a ;

是引用
引用引入了对象的一个同义词。定义引用的表示方法与定义指针相似,只是用&代替了*。
int &r = a
定义了r为a的引用。通过这样的定义,r和a表示同一对象
其实相当于给a 起了个别名
所以说程序运行结束后a=2,b=10