通过测试发现两个整数相成时其结果不能超出65536的一半,即16进制有符号数范围0000-FFFF(-32768~32767),若其中某一数字超出此范围则自动转化到更大表示范围的数据类型. 如: 32767*1 ok 32767*2 X 32768*2 ok 256*127 ok 32512 256*128 X 32768
Private Sub Command1_Click() Dim p As Long Dim a As Long Dim b As Long a = 256 b = 256 p = a * b Print p End Sub
如:
32767*1 ok
32767*2 X
32768*2 ok
256*127 ok 32512
256*128 X 32768
Private Sub Command1_Click()
Dim p As Long
Dim a As Long
Dim b As Long
a = 256
b = 256
p = a * b
Print p
End Sub