55问答网
所有问题
在C语言中,以下非法的赋值语句是
在C语言中,以下非法的赋值语句是( )
A. j++; B. ++(i+1); C. x=j>0; D. k=i==j;
哪位大神可以详细说明以下,每个选项的错误和为什么正确,麻烦了
举报该问题
推荐答案 2018-10-17
A.j++; 其实是j=j+1;
B. ++(i+1) ;其实是(i+1)=(i+1)+1; 显然是错的,因为i是变量,但是(i+1)并不是变量,不能赋值;
C. x=j>0; 因为">"的
优先级
比"="高,先算j>0,然后把结果赋值给x;
D.k=i==j; 同样的因为"=="优先级比"="高,先算出i==j,然后把结果赋值给k;
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://55.wendadaohang.com/zd/ceLReec8FeRI8GLQ8c.html
其他回答
第1个回答 2019-06-04
c选项是错的
a选项*(p+i)为p[i][0]的地址,*(p+i)+j为p[i][j]的地址,*(
*(p+i)+j)
也就是p[i][j]的值
b选项中p[i]相当于*(p+i),其他跟a一样了
c选项,如上面所说,*(p+i)+j为p[i][j]的地址,不能赋值
d选项,(*(p+i))为p[i][0]的地址,(*(p+i))[j]就是p[i][j]的值
相似回答
大家正在搜
相关问题
C语言中,以下非法赋值语句是:A:n=(i+2,++i) B...
C语言题目 以下非法的赋值语句是?
在C语言中,以下非法的表达式是( ) A. 0<=x<=10...
请问以下C语言选择题的答案,以下非法的赋值语句是.
C语言:int m=2,*p=&m,*q=p;,则以下非法的...
以下不符合C语法的赋值语句是 。 A、m=(2+1,m=1)...
以下合法的C语言赋值的语句是? A.a=10 B.x=y=2...
C语言中赋值语句有什么规则要求?