楼上的 回答 有点不对
m,n的值是什么,有变化吗?请给予详细解释!
结果是 m=1 n=0
这设计到 逻辑运算的短路 问题
首先 表达式(m=a==b)a==b 为真 即 1 最后整个表达式 为 真 m的值 为1
对于 逻辑运算符|| 如果它的 左操作数 为真
不在 对右 操作数 进行判断 这就是所谓的短路
所以 n的 值 还是0 没变
首先 ==、=、||这个三个运算符的优先级是
== > = > ||
所以,先计算a==b 和 c==d
由于m,n.b,c,d都是0
所以a==b的值是1,c==d的值也是1
这样,m和n的值都是1
最后就等于这样运算m||n
犹疑m和n都是1
所以
(m=a==b)||(n=c==d)的值是1