为什么输出结果是1 ,10

来源:2-4 选择题

慕莱坞1273052

2018-04-01 08:13:53

int a=1,b=2,*p,*q;

p=&b;

q=&a;

q=p;

*q=10;

cout<<a<<','<<b<<endl;


写回答

2回答

请叫我deeply

2018-04-10

int a=1,b=2,*p,*q;

p=&b;// p指向变量b

q=&a;//q指向变量a

q=p;//把p赋予q即使q指向p指向的地方,即使q指向b;

*q=10;//q指向的是b,此时*q即b,b为10;

cout<<a<<','<<b<<endl;//a不变,b为10


2

guly

2018-04-01

你好,最后指针变量p和q都指向变量b,所以改变的都是b的值,如果解决您的问题请采纳,祝学习愉快!

1

0 学习 · 593 问题

查看课程