声明语句“char a='%',*b=&a,**c=%b",下列表达式错误的是 A. b==*c B. a==**c c, **c='%' D. &a=*&b
发布网友
发布时间:2023-09-07 14:35
我来回答
共2个回答
热心网友
时间:2023-10-08 05:17
1题目有错,先改正。
声明语句“char a='%',*b=&a,**c=&b;",下列表达式错误的是
A. b==*c
B. a==**c
C, **c='%'
D. &a=*&b
2 分析:
A. b==*c //正确。==左边右边类型一致,可以比较。
B. a==**c //正确。==左边右边类型一致,可以比较。
C, **c='%' //正确。=左边右边类型一致,可以赋值。
D. &a=*&b //不正确。&a是常量,不能当成左值使用。追问那*&b表达的是什么意思
追答*&b表示取b的址,再取内容,等价于b。
热心网友
时间:2023-10-08 05:17
首先,问题的确是错了
楼上已经说了
声明语句“char a='%',*b=&a,**c=&b;",下列表达式错误的是
A. b==*c
B. a==**c
C, **c='%'
D. &a=*&b
A错,c是二级指针,不能将二级指针的地址赋给一级指针变量
B对,*c是b,**c就是*b,也就是b的内容,而b的内容就是a的地址,所以就是'%'
C对,不用说了
D错,地址本来就是一个定值,不能被赋值