十六进制到十进制

时间:2015-05-18 13:36:25

标签: numbers hex decimal autoit definition

我必须将十六进制数转换为十进制数,但不知道如何。在AutoIt文档中(如下图所示)定义了一些常量(被指定为十六进制值):

a hexadecimal number from AutoIt's documentation

0x00200000十六进制(图中带下划线)等于8192十进制(这是真正的转换)。但转换器返回2097152。我必须转换另一个十六进制值(0x00000200),但转换器错误。如何正确转换它?

当我使用定义$WS_EX_CLIENTEDGE(或十六进制值)时,它不起作用。如果我使用整数,我相信它会起作用。

1 个答案:

答案 0 :(得分:3)

根据Documentation - Language Reference - Datatypes

  

在AutoIt中,只有一种称为Variant的数据类型。一个变种可以   包含数字或字符串数​​据,并决定如何使用数据   取决于它正在使用的情况。

发行:

ConsoleWrite(0x00200000 & @LF)

表明陈述的行为。如果转换要求,请使用Int()

#region Hex2Dec
Global Const $dBin1 = 0x00200000
Global Const $iInt1 = Int($dBin1)

ConsoleWrite($iInt1 & @LF)
#endregion

#region Dec2Hex
Global Const $iInt2 = 8192
Global Const $dBin2 = Hex($iInt2)

ConsoleWrite('0x' & $dBin2 & @LF)
#endregion

相关功能包括: