当前位置 : 主页 > 网络编程 > lua >

lua – Hex constant =格式错误的数字?

来源:互联网 收集:自由互联 发布时间:2021-06-23
我有一个Lua脚本,我正在尝试使用十六进制数字(0x ..).如果我在控制台中使用官方 Windows二进制文件运行此脚本,它可以正常工作.但如果我在我的应用程序(简单dofile)中运行它,我会得到 m
我有一个Lua脚本,我正在尝试使用十六进制数字(0x ..).如果我在控制台中使用官方 Windows二进制文件运行此脚本,它可以正常工作.但如果我在我的应用程序(简单dofile)中运行它,我会得到

malformed number near '0x1F'

十六进制是什么并不重要,我总是得到那个错误,就像它不支持它们一样.我正在使用的库是Lua 5.1.4,我尝试了两个不同的库(第一个是我自己编译的那个),所以这应该不是问题.

有没有人知道这里可能有什么问题?

编辑:
这不是剧本.无论我做什么,简单的“foo = 0xf”都会触发错误,即使文件中没有其他内容也是如此.

更新:

tonumber("0xf")

这会返回nil,而

tonumber("15")

工作得很好.在我的库中,十六进制肯定有问题……

如果十六进制文字不适合你(尽管它们应该),你总是可以通过做tonons(“fe”,16)来使用lua中的十六进制
网友评论