如何转换此类用户数据:
local user_data = { 0x33, 0x22, 0x11, 0x00 }
使用Lua的uint32或float?我在文档中找不到任何有关此问题的内容。
我尝试了各种方法,但这些方法都没有效果:
local data_uint32 = tonumber(user_data)
local data_uint32 = user_data:uint32()
local data_uint32 = uint32(user_data)
答案 0 :(得分:4)
我宁愿定义自己的功能:
function toUInt32(user_data)
return user_data[1] * 0x1000000
+ user_data[2] * 0x10000
+ user_data[3] * 0x100
+ user_data[4]
end
print(toUInt32(user_data))
不知道任何预定义的库函数来执行此操作。
注意:您可能需要考虑数字的字节顺序。