当e = 23857200时,即e=&H16C0830时,分四个byte取出来,如第一个byte为&H01,第二byte为&H6C,第三个为08,第四个为30 MsgBox Desc_1Byte(e)
MsgBox Desc_2Byte(e)
MsgBox Desc_3Byte(e) '溢出,与最高位的符号有关吗?怎么处理呢
MsgBox Desc_4Byte(e) Function Desc_1Byte(k As Long) As Byte
Dim m As Byte
m = (k And &HFF000000) / 16777216
Desc_5Byte = m
End Function Function Desc_2Byte(k As Long) As Byte
Dim m As Byte
m = (k And &HFF0000) / 65536
Desc_6Byte = m
End Function Function Desc_3Byte(k As Long) As Byte
Dim m As Byte
m = (k And &HFF00) / 256 '此处的&HFF00因为&H0000FF00,但前边四个0加不上去,出现溢出了,有什么方法保留这几个0吗
Desc_7Byte = m
End Function Function Desc_4Byte(k As Long) As Byte
Dim m As Byte
m = (k And &HFF)
Desc_8Byte = m
End Function 我发现这全部都有这个问题?
MsgBox Desc_2Byte(e)
MsgBox Desc_3Byte(e) '溢出,与最高位的符号有关吗?怎么处理呢
MsgBox Desc_4Byte(e) Function Desc_1Byte(k As Long) As Byte
Dim m As Byte
m = (k And &HFF000000) / 16777216
Desc_5Byte = m
End Function Function Desc_2Byte(k As Long) As Byte
Dim m As Byte
m = (k And &HFF0000) / 65536
Desc_6Byte = m
End Function Function Desc_3Byte(k As Long) As Byte
Dim m As Byte
m = (k And &HFF00) / 256 '此处的&HFF00因为&H0000FF00,但前边四个0加不上去,出现溢出了,有什么方法保留这几个0吗
Desc_7Byte = m
End Function Function Desc_4Byte(k As Long) As Byte
Dim m As Byte
m = (k And &HFF)
Desc_8Byte = m
End Function 我发现这全部都有这个问题?
解决方案 »
- treeview的勾选问题~简单的~大家帮帮忙!
- 两个选择框的存储问题
- 大哥们,请如何来实现帐号和密码的验证?用Access做数据库建立一表(储存帐号和密码),在登陆框中输入的帐号和密码怎样和Access中储存帐
- 单片机跟PC机通信问题(用VB控件mscomm)
- 关于recordset对象的find方法使用的问题
- 请高手帮忙分析此奇怪问题。
- 关于字符串替换的函数
- 怎么判断某个目录是否共享?
- 一个toolbar的小问题
- vb.net!提问!
- SQL中使用了union 关键安会提示ORA-00933 SQL命令未正确结束。
- netuserenum 出错,自动退出 或者是 0xxxxxxxxx内存不能为read 求高人帮助呀!!!
Dim m As Byte
m = Val("&H" & Left(Right("0000000" & Hex(k), 8), 2))
Desc_5Byte = m
End Function Function Desc_2Byte(k As Long) As Byte
Dim m As Byte
m = Val("&H" & Mid(Right("0000000" & Hex(k), 8), 3, 2))
Desc_6Byte = m
End Function Function Desc_3Byte(k As Long) As Byte
Dim m As Byte
m = Val("&H" & Mid(Right("0000000" & Hex(k), 8), 5, 2))
Desc_7Byte = m
End Function Function Desc_4Byte(k As Long) As Byte
Dim m As Byte
m = Val("&H" & Mid(Right("0000000" & Hex(k), 8), 7, 2))
Desc_8Byte = m
End Function
Function Desc_1Byte(k As Long) As Byte
Dim m As long
m = (k And &HFF000000) \ 16777216
Desc_5Byte = m
End Function Function Desc_2Byte(k As Long) As Byte
Dim m As long
m = (k And &HFF0000) \ 65536
Desc_6Byte = m
End Function Function Desc_3Byte(k As Long) As Byte
Dim m As long
m = (k And &HFF00) \ 256
Desc_7Byte = m
End Function Function Desc_4Byte(k As Long) As Byte
Dim m As long
m = (k And &HFF)
Desc_8Byte = m
End Function
Dim m(3) As Byte
CopyMemory m(0), a, 4
Desc_1Byte = m(3)
End Function Function Desc_2Byte(k As Long) As Byte
Dim m(3) As Byte
CopyMemory m(0), a, 4
Desc_2Byte = m(2)
End Function Function Desc_3Byte(k As Long) As Byte
Dim m(3) As Byte
CopyMemory m(0), a, 4
Desc_3Byte = m(1)
End Function Function Desc_4Byte(k As Long) As Byte
Dim m(3) As Byte
CopyMemory m(0), a, 4
Desc_4Byte = m(0)
End Function
Dim m(3) As Byte
CopyMemory m(0), k, 4
Desc_1Byte = m(3)
End Function 余同。