我遇到了VB6给我溢出的问题。我使用按位运算来查找单个位的状态,但该语句特别是最后一行:
Dim a As Double
Dim b As Double
Dim c As Double
a = 2 ^ 31
b = 0
c = b And a
错误发生在最后一行,溢出。我的印象是And运算符限制为4个字节(VB6中长)并因此溢出
a = 2 ^ 31
大于长的上限。有人可以确认/澄清/解决这个问题吗?再一次,我只需要找到一个单独的位的状态。 (如果我制作a,b和c货币,这也会发生,这也是8个字节但存储为整数类型。我需要44位,因此我默认为8字节数据类型)
(我对位操作和VB一般是新手,而StackOverflow也是如此,原谅我可能犯过的任何错误)