C++问题:已有定义“int a=10,*p1,*p2;p1=p2=&a;",下面语句中正确的是:A.a=*p1+*p2;B.p2=a;C.*p2=&a;D.&a=p2;麻烦说明错误选项的原因,

问题描述:

C++问题:已有定义“int a=10,*p1,*p2;p1=p2=&a;",下面语句中正确的是:
A.a=*p1+*p2;
B.p2=a;
C.*p2=&a;
D.&a=p2;
麻烦说明错误选项的原因,

A正确,
p1=p2=&a;p1、p2是指针,指向a的地址.
所以*p1=*p2=a=10.
B:p2是指向a的地址,a是整形.
C:*p2是a的值为10,&a是a的地址.
D:&a地址常量,不可赋值