VB中16进制与10进制相互转化,该怎么处理

 我来答
求真实验室
2022-10-13 · 探索生活中的科学奥秘
求真实验室
太平洋电脑网是专业IT门户网站,为用户和经销商提供IT资讯和行情报价,涉及电脑,手机,数码产品,软件等。
向TA提问
展开全部

10进制转16进制的话可以使用HEX()函数,16进制转10进制没有现成函数,可以使用如下代码实现:

' 用途:将十六进制转化为十进制

' 输入:Hex(十六进制数)

' 输入数据类型:String

' 输出:HEX_to_DEC(十进制数)

' 输出数据类型:Long

' 输入的最大数为7FFFFFFF,输出的最大数为2147483647

Public Function HEX_to_DEC(ByVal Hex As String) As Long

Dim i As Long

Dim B As Long

Hex = UCase(Hex)

For i = 1 To Len(Hex)

Select Case Mid(Hex, Len(Hex) - i + 1, 1)

Case "0": B = B + 16 ^ (i - 1) * 0

Case "1": B = B + 16 ^ (i - 1) * 1

Case "2": B = B + 16 ^ (i - 1) * 2

Case "3": B = B + 16 ^ (i - 1) * 3

Case "4": B = B + 16 ^ (i - 1) * 4

Case "5": B = B + 16 ^ (i - 1) * 5

Case "6": B = B + 16 ^ (i - 1) * 6

Case "7": B = B + 16 ^ (i - 1) * 7

Case "8": B = B + 16 ^ (i - 1) * 8

Case "9": B = B + 16 ^ (i - 1) * 9

Case "A": B = B + 16 ^ (i - 1) * 10

Case "B": B = B + 16 ^ (i - 1) * 11

Case "C": B = B + 16 ^ (i - 1) * 12

Case "D": B = B + 16 ^ (i - 1) * 13

Case "E": B = B + 16 ^ (i - 1) * 14

Case "F": B = B + 16 ^ (i - 1) * 15

End Select

Next i

HEX_to_DEC = B

End Function

扩展资料:

在VB中将十进制转化为十六进制的函数:

输入:Dec(十进制数)'

输入数据类型:Long'

输出:D2H(十六进制数)'

输出数据类型:String'

输入的最大数为2147483647,

输出最大数为7FFFFFFFPublicFunction D2H(Dec As Long) As String

Dim a As String

D2H = ""

Do While Dec > 0

a = CStr(Dec Mod 16)         Select Case a             Case "10": a = "A"

Case "11": a = "B"

Case "12": a = "C"

Case "13": a = "D"

Case "14": a = "E"

Case "15": a = "F"

End Select

D2H = a & D2H

Dec = Dec \ 16     LoopEnd Function

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式