Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/lua/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
String 如何将十六进制数字字符串转换为它在Lua中表示的值_String_Lua_Hex - Fatal编程技术网

String 如何将十六进制数字字符串转换为它在Lua中表示的值

String 如何将十六进制数字字符串转换为它在Lua中表示的值,string,lua,hex,String,Lua,Hex,我读了很多行的十六进制数据。它们以字符串的形式出现,我将它们解析为行代码,行代码告诉我如何处理其余的数据。一行设置地址的最高有效字(MSW),另一行设置最低有效字(LSW) 然后我需要将它们连接在一起,这样如果MSW=“00ff”和LSW=“f10a” 地址为00fff10a 这一切都很顺利,但我应该检查地址是否在某一组值之间: if address <= "007FFFh" and address >= "000200h" then print "I'm in" end

我读了很多行的十六进制数据。它们以字符串的形式出现,我将它们解析为行代码,行代码告诉我如何处理其余的数据。一行设置地址的最高有效字(MSW),另一行设置最低有效字(LSW)

然后我需要将它们连接在一起,这样如果MSW=“00ff”和LSW=“f10a” 地址为00fff10a

这一切都很顺利,但我应该检查地址是否在某一组值之间:

if address <= "007FFFh" and address >= "000200h" then
    print "I'm in"
end
如果address=“000200h”则
打印“我在”
结束
大家可能都知道,Lua不喜欢这个,因为它给了我一个使用字符串的错误


如果有办法将字符串转换为十六进制,使“FFFF”变成0xFFFF?

您可以使用
tonumber

local someHexString = "03FFACB"
local someNumber = tonumber(someHexString, 16)

请注意,数字不是十六进制的。它们也不是十进制、八进制或其他形式。它们只是数字。数字0xFF与255相同。“FF”和“255”是同一个数字的字符串表示。

新的饮酒游戏:每次有人提到Lua不是首字母缩略词时,就尝试一下。好吧,我还没有测试过它,但我相信当我回到它时,它会满足我的需要哈哈。