问题 单项选择题

若有说有: int n=2,*p=&n,*q=p;, 则以下非法的赋值语句是

A.P=q;

B.*p=*q;

C.n=*q;

D.p=n;

答案

参考答案:D

解析: 本越考查的知识点是指针的赋值。本题中首先定义了一整型变量n并赋初值为2,接着定义了一个整型指针变量p并让它指向n,接着又定义了一指向指针的指针变量q,选项 A中给指针变量p赋值小故这个赋值语句正确;选项B中*p=*q就是将*q的值赋给指针变量p所指向的变量n,故这个赋值语句不是非法的赋值语句;选项C中是将*q的值赋给变量n,故这个表达式不是非法的赋值语句:选项D中p为一指针变量应该杵一地址赋给它,而在此选项的表达式中将变量n而不是n的地址赋给它,故这个表达式不合法。

解答题
解答题