c语言中赋值表达式的值是什么,就比如关系表达式的值是一个逻辑值

如题所述

赋值表达式的值类型
也就是赋值的左值类型。
注意是最左
比如
a=b=c=d;
那么表达式的值,就是a赋值后的值。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-03-17
没有太明白你的问题的实质,也就是问题的所在。很多事情都是明确的,也许我理解不够。就我所理解的解答:

C语言中赋值表达式的值,就是表达式的右值。比如:

int a, b;
b = 10;
a = b;

两个赋值语句的“值”,都是10。就是其“右值”的值。

你可以测试一下是否正确,在上述的后面增加语句,当然不推荐在实际的程序中使用:

int c;
if (c = a = b) /* 不推荐,仅仅测试用 */
printf(“c = %d\n", c);

输出结果应该是:

c = 10

不知这样有没有解决你的问题?有问题请继续。
第2个回答  2018-03-15
赋值语句的返回值:错误返回0,正确返回所赋的数值。
所以会有 a=b=1;这样的表达式。 连等从右往左结合,b=1返回1 所以a等于1。
第3个回答  2019-10-06
a是把a的值赋给b,再把b的值赋给c
选项d与a类似
选项c:因为&&是逻辑与,如果c=0时,则a=c=0表示假,就不再计算(b=c)了
所以只要选项b,不管c的值是否为0,都要计算b=c的值,在这里也就是给a、b赋值了。
第4个回答  2018-03-17
赋值语句的返回值 取决于 所赋予的值

a = (b = 10); a的值就是10
a = (b = 0); a的值就是0
a = 1 && (a = 0); a就是0

a = 1 && ( a = 10 ); a就是1
=操作符就是将给定的数字做一些处理,然后返回一个数字。
而操作符的计算也就是执行操作符的处理,并返回值
相似回答