print(0x1e1)
将在Lua打印481,但我不知道为什么。有人可以帮我理解吗?
答案 0 :(得分:5)
因为481(十进制)是1e1(十六进制)。
0x
前缀表示数字为十六进制,或者为16。
没有前缀意味着数字是十进制,或者是10。
print
默认将数字格式化为十进制。
要打印特定基数的数字:
# As decimal
print(string.format("%d", 0x1e1)) # Output: 481
print(0x1e1) # Output: 481
# As hexadecimal
print(string.format("%x", 0x1e1)) # Output: 1e1