C语言里,怎样理解表达式(x=a>b)&&(y=c>d)的意义?

2024年11月27日 15:25
有5个网友回答
网友(1):

将a>b的值赋值给x 将c>d的值赋值给y 然后进行逻辑与运算。 关键是优先级

网友(2):

运算符都是有优先级和运算顺序的。
x=a>b
先计算比较运算符,若a>b,则表达式为真,x=1,否则x=0,
y=c>d
同上 y=0或1,
然后 把x和y两个值进行&&运算

表达式的值也可能是1或0

网友(3):

这是关于预算符优先级的,首先分别算2个括号里的,左边的关系运算符优先级要比赋值优先级高,所以先算a>b,如果a>b为真,则表示值为1,假则为0,然后把1或0赋给x;右边同理,就不多说了;最后算&&,如果2个括号都为1,则,对外表示值1,否则对外表示值0

网友(4):

a=5 b=4 c=2 d=3
首先进行 a>b 与 c>d 的比较 5>4 为真=1 2>3 为假=0
接着赋值给X=1 Y=0
最后相与 X&&Y
即 1&&0
结果为0

网友(5):

当x=1且y=1时,表达式的值为true。当a大于b时x=1,当c大于d时,y=1。