Private Sub Command1_Click()
Dim a&, b&, c&
Dim i&
i = &H123456
a = (i And &HFF0000) / &H10000
b = (i And &HFF00) / &H100
c = (i And &HFF)
MsgBox Hex(a) & "," & Hex(b) & "," & Hex(c)
End Sub
计算后b的值应该是&H34,可是为什么是&H1234??????
我在多部机器上都是如此!
为什么????????
Dim a&, b&, c&
Dim i&
i = &H123456
a = (i And &HFF0000) / &H10000
b = (i And &HFF00) / &H100
c = (i And &HFF)
MsgBox Hex(a) & "," & Hex(b) & "," & Hex(c)
End Sub
计算后b的值应该是&H34,可是为什么是&H1234??????
我在多部机器上都是如此!
为什么????????
解决方案 »
- 这么设计表,合理吗?
- 对于中职的VB教学,各位有哪些建议?欢迎各抒己见
- 找RSS碼(Reduced Spaced Symbology)碼制?馬上結.
- ActiveX控件报错 “不能在该主机应用程序中从ActiveX Dll\ ActiveX控件或属性页显示非模式窗体”
- 大侠救命!'run-time error -2147467259 (80004005)',急啊!
- 如何判断操作系统!
- ★★★有QQ号码赠送!!你想要吗?(限量赠送!)
- 用VB做的媒体播放器的问题
- 高分求教:如何得到本局域网内所有电脑的IP地址?
- VS2010里的VB如何编写在弹出对话框里自动点确定?
- 比较菜的问题,但我有难度!!
- 二进制怎么表示?(在线)
b = (i And &HFF00) / &H100一句中,因为i是3字节,所以常数&HFF00自动带符号扩展到4字节,即&HFF00 = &HFFFFFF00,结果当然是123400了
要限定&HFF00就是两字节,或者让它无符号扩展成&H0000FF00,要这么写:b = (i And &HFF00&) / &H100 '注意后面那个&
Private Sub Command1_Click()
Dim a&, b&, c&
Dim i&
i = &H123456
a = (i And &HFF0000) / &H10000 Mod &H100
b = (i And &HFF00) / &H100 Mod &H100
c = (i And &HFF)
MsgBox Hex(a) & "," & Hex(b) & "," & Hex(c)
End Sub
Private Sub Command1_Click()
Dim a&, b&, c&
Dim i&
i = "&H123456"
a = (i And "&HFF0000") / "&H10000"
b = (i And "&H00FF00") / "&H100" '<--特别是这里
c = (i And "&HFF")
MsgBox Hex(a) & "," & Hex(b) & "," & Hex(c)
End Sub