设有定义:int n=0,*p=&n,**q=&p,则下列赋值语句哪个是正确的?A.p=1;B.*q=2;C.q=p;D
来源:学生作业帮 编辑:大师作文网作业帮 分类:综合作业 时间:2024/09/20 23:18:53
设有定义:int n=0,*p=&n,**q=&p,则下列赋值语句哪个是正确的?A.p=1;B.*q=2;C.q=p;D.*p=5;
为什么是D,
为什么是D,
答案是D
n,p,q这三者的关系如图所示.
A错.p是指针,它里面存放的是地址值,而1是整数,类型不符,不能赋值.
B错.q是指向指针的指针,*q相当于写成p一样.错误情况参考A的解释
C错.p是指向整型变量的指针(一级指针),可以存放整型变量的地址.而q是指向指针的指针(二级指针),可以存放另一个一级指针变量(如p指针)的地址,但不能存放整型变量的地址.此句相当于写成了:q=&n.
n,p,q这三者的关系如图所示.
A错.p是指针,它里面存放的是地址值,而1是整数,类型不符,不能赋值.
B错.q是指向指针的指针,*q相当于写成p一样.错误情况参考A的解释
C错.p是指向整型变量的指针(一级指针),可以存放整型变量的地址.而q是指向指针的指针(二级指针),可以存放另一个一级指针变量(如p指针)的地址,但不能存放整型变量的地址.此句相当于写成了:q=&n.
设有定义:int n=0,*p=&n,**q=&p,则下列赋值语句哪个是正确的?A.p=1;B.*q=2;C.q=p;D
7.设有定义:int n=0,*p=&n,**q=&p;则以下选项中,正确的赋值语句是( ).A) p=1; B) *q
设有定义:int n=0,*p=&n,**q=&p;则一下选项中,正确的赋值语句是()A,P=1B.*q=2 C.q=p
设有定义语句:int =0,*p=&你,*q;以下选项正确的是?a;p=1 b:p=q c:*p=*q
若有说明int n=2,*p=&n,*q=p;,则以下非法的赋值语句是 A)p=q B)p=n C)*p=*q D)n=
设有int p,q;以下不正确的语句是( ) A.p *=3; B.p/=q; C.p+=3; D.p&&=q;
设有定义:int n1=0,n2,*p=&n2,*q=&n1; 以下赋值语句中与n2=n1:语句等价的是 A.*p=*q
若有说明:int n=2,*p=&n,*q=p;,则以下非法的赋值语句是 A) n=(i=2,++i); B) j++;
设有定义:int n1=0,n2,*p=&n2,*q=&n1;,以下赋值语句中与n2=n1;语句等价的是( )A*p=*
设有说明int s[2]={0,1],p=s;则语句错误的是() A. s++ B .p++ C. *p++ D. (*
17. 已知定义:"int a[]={1,2,3,4,5},i,*p=a,*q=p;则下列错误的语句是( ).
设有定义int m,n,*p;与语句“m = n;”等价的语句序列是( ).