鱼C论坛

 找回密码
 立即注册
查看: 650|回复: 4

[已解决]逻辑运算不懂,求教

[复制链接]
发表于 2018-8-17 18:50:04 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
好难理解哎
最佳答案
2018-8-17 19:04:13
这个不是真正的位元逻辑!!!

简单,只有 0 为非,其他的非零值为真
3 and 4 == 4    >>    真 and 真 == 真,既然是真,那取哪一个都无所谓,最简单就是返回最后一个判断的
3 or 4 == 3    >>    【或】,其一为真就可以了,第一个非零,为真,直接返回(短路逻辑)

(not 1) or (0 and 1) or (3 and 4) or (5 and 6) or (7 and 8 and 9)
真取反==假  or 假与真==假(短路)or (4) or (6) or(9)
都是 or 判断,前面是假。只要找到一个【真】就可以了。
第一个找到的是 4 ,短路逻辑
Screenshot_2018-08-17-18-47-55-840_com.z28j.feel.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-8-17 18:55:14 | 显示全部楼层
优先级先记住
or是左边第一个不为0的值,因为只要出现非0就可以返回逻辑
and非零是右边最后一个值,因为逻辑要算到最后,
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-8-17 19:04:13 | 显示全部楼层    本楼为最佳答案   
这个不是真正的位元逻辑!!!

简单,只有 0 为非,其他的非零值为真
3 and 4 == 4    >>    真 and 真 == 真,既然是真,那取哪一个都无所谓,最简单就是返回最后一个判断的
3 or 4 == 3    >>    【或】,其一为真就可以了,第一个非零,为真,直接返回(短路逻辑)

(not 1) or (0 and 1) or (3 and 4) or (5 and 6) or (7 and 8 and 9)
真取反==假  or 假与真==假(短路)or (4) or (6) or(9)
都是 or 判断,前面是假。只要找到一个【真】就可以了。
第一个找到的是 4 ,短路逻辑
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-8-17 22:29:12 | 显示全部楼层
claws0n 发表于 2018-8-17 19:04
这个不是真正的位元逻辑!!!

简单,只有 0 为非,其他的非零值为真

我能不能这样理解:
not 1:不取真;or是取后面的,但后面为真,既为非假;接着第二个or取后面的,3and4是取4不是(假:0),所以取到4就短路了。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-8-17 23:05:21 | 显示全部楼层
逆鳞丶樱之羽 发表于 2018-8-17 22:29
我能不能这样理解:
not 1:不取真;or是取后面的,但后面为真,既为非假;接着第二个or取后面的,3and4是取 ...

理解错误:not 是取反,原本 1 不为 0 即【真】,取反为【假】
A 【判断】B  #优先顺序是从左到右
and 的短路条件:第一个为【假】
or 的短路条件:第一个为【真】   #前 2 假没关系,第三个为真,直接返回~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-20 18:12

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表