我必须将十六进制数转换为十进制数,但不知道如何。在AutoIt文档中(如下图所示)定义了一些常量(被指定为十六进制值):
0x00200000
十六进制(图中带下划线)等于8192
十进制(这是真正的转换)。但转换器返回2097152
。我必须转换另一个十六进制值(0x00000200
),但转换器错误。如何正确转换它?
当我使用定义$WS_EX_CLIENTEDGE
(或十六进制值)时,它不起作用。如果我使用整数,我相信它会起作用。
答案 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
相关功能包括: