一道C语言题目求解
p1和p2是指向同一个字符串的指针变量,c为字符变量,则以下不能正确执行的赋值语句是:A.c=*p1+p2;B.p2=c;C.p1=p2;D.c=*p1*(p2);C很明...
p1和p2是指向同一个字符串的指针变量,c为字符变量,则以下不能正确执行的赋值语句是:
A. c=*p1+p2; B. p2=c;
C. p1=p2; D. c=*p1*(p2);
C很明显可以这我懂,剩下的三个求详细解,答案居然是B,可我觉得B可以,A、D都不行啊……
A选项应该是c=*p1+*p2;D选项应该是c=*p1*(*p2);……不小心打错了 展开
A. c=*p1+p2; B. p2=c;
C. p1=p2; D. c=*p1*(p2);
C很明显可以这我懂,剩下的三个求详细解,答案居然是B,可我觉得B可以,A、D都不行啊……
A选项应该是c=*p1+*p2;D选项应该是c=*p1*(*p2);……不小心打错了 展开
7个回答
展开全部
答案是B,因为:
A/D:*p1、*p2都是字符型,相加相乘都可以,但是值可能溢出,编译是没有问题;
B:因为c是字符型,不是指针型,因此编译会认为类型不匹配;
A/D:*p1、*p2都是字符型,相加相乘都可以,但是值可能溢出,编译是没有问题;
B:因为c是字符型,不是指针型,因此编译会认为类型不匹配;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
如果b选项是*p2=c,那就对了。c为字符变量,p2只是一个地址的指针变量,不是c只能赋值给p2指向的地址。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
A中p2里面放的是地址值,在内存里是字符型的,因此可以进行赋值运算;B里面p2和c的类型不一样,肯定不能赋值;D跟A的道理是一样。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
c是一个字符变量,p2是指针地址, 如果是*p2=c 就对了!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
应该是p2=&c;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询