vb 表达式问题

来源:百度知道 编辑:UC知道 时间:2024/06/03 07:22:02
1.5+3\2>2 or 7 mod 3 <4 and not 1这个表达式的结果为啥是-1啊?请熟悉VB的朋友帮帮我?

优先级:算数>关系>逻辑
1.5+3\2>2 or 7 mod 3 <4 and not 1
=1.5>2 or 2 < 4 and not 1
=1 or 1 and not 1
=1 or 1 and 0
=1 or 0
=-1
(-1为逻辑真,0为逻辑假)

优先级:算数>关系>逻辑
1.5+3\2>2 true ,7 mod 3 <4 true,not 1 false
原式变为
true or true and false

true and false 为false
式又变为
true or false
结果为 true
即:-1(逻辑真的默认值是-1,逻辑假的默认值是0)

1.5+3\2>2 返回 true
7 mod 3 <4 true
not 1 true
所以:7 mod 3 <4 and not 1 返回true
所以:
(1.5+3\2>2) or ( 7 mod 3 <4 and not 1) 返回true

true 转换成-1