请求C++达人帮忙

来源:百度知道 编辑:UC知道 时间:2024/05/17 03:53:42
若有说明语句“int n=2,*p=&n,*q=p;”则以下非法的赋值语句是———— 。A.p=q; B.*p=*q; C.n=*q; D.p=n;

请求达人帮忙

D
p为整形指针不能与整形变量交换数值

D

当然是D了!
因为p为指向整型数据n的地址的指针,再为其赋值为n值,岂不错误?

D
因为p是指向整形常量n=2的首地址的指针。所以,p也是常量,常量是不能赋给常量的。