在VBScript中使用AND运算符在两个数之间计算什么?

问题描述 投票:0回答:1
Option explicit
Dim VarA
Dim VarB
VarA = 2560 and 3
VarB = 2560 and 4
wscript.echo "VarA is "&VarA
wscript.echo "VarB is "&VarB

显示

VarA is 0
VarB is 0

谁来解释一下 VarAVarB 导致 0.

vbscript
1个回答
0
投票

它正在做你要求它做的事情。

的文件 And 运营商:

如果且仅如果这两个表达式的值为 ,结果是 . 如果任一表达式的值为 假的,结果是 假的. 逻辑运算不短路。所有的表达式都被评估。

在这个例子中,虽然作为 @MCND 评论中提到 再从文件中。

The And 操作员还执行 比特 比较两个数字表达式中位置相同的位,并设置相应的位。结果.

因此 0 结果,而不是一个显式布尔值。

然而,如果你想把这些值加在一起,你需要使用 加法 + 运营商.

两数相加。

Option Explicit
Dim VarA
Dim VarB
VarA = 2560 + 3
VarB = 2560 + 4
WScript.Echo "VarA is " & VarA
WScript.Echo "VarB is " & VarB

输出。

VarA is 2563
VarB is 2564

有用的链接

© www.soinside.com 2019 - 2024. All rights reserved.