为了账号安全,请及时绑定邮箱和手机立即绑定

三个变量的异或运算也是有且只有一个为真即为真吗?为什么当我把$c改成TRUE,$a xor $c xor $b是通过啊?

三个变量的异或运算也是有且只有一个为真即为真吗?为什么当我把$c改成TRUE,$a xor $c xor $b是通过啊?

正在回答

2 回答

这些逻辑运算都在两者间运算吧。三个的话从左至右,前两个的结果和第三个进行运算。

其实异或说通俗的就是两者不同为真咯。

你上面说的 $a xor $c xor $b , $a xor $c结果为false,然后false xor true,结果自然是true了。

2 回复 有任何疑惑可以回复我~

不会的,我试过了。

0 回复 有任何疑惑可以回复我~
#1

过目不忘的丑

你要了解,xor是仅有一个true返回值才为true.按照上面的代码来看..$a为true $c为false $b为true $d为false 首先,$a true和$c false相比,他们两个之间仅有一个true那么返回的值为true,再来,和$d相比,它们两个之间还是仅有一个值为true,那么返回的值就是true,最后在和$b相比,在这里就可以看出,两个值都为true,那么就不是仅有一个true,那么返回的值就为false.这样说应该就懂了.... 只要相比的变量中.只有一个值为true那么返回的值就为true,如果相比的变量中有两个以上的值为true那么返回的值就为false.
2015-11-29 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

三个变量的异或运算也是有且只有一个为真即为真吗?为什么当我把$c改成TRUE,$a xor $c xor $b是通过啊?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信