• 欢迎大家分享资料!前往留言板评论即可!

Luat如何实现64位整数的存储

合宙 模组资料网 2年前 (2021-05-15) 545次浏览 0个评论 扫描二维码

luat的lua是5.1.5版本,默认是32位整数或者32位float的,当整数大于32位的时候是不能被存储的。

为了解决这个问题,在luat的core层实现了一个方法,用来存储64位的整数。

rtos.toint64(“862991234567890″,”big”)
rtos.toint64(“862991234567890″,”little”)

注意:该方法返回的是字符串(lua的字符串包含二进制流,也就是number,包括0都可以保存到字符串里,不仅仅是可见ascii)

本质上,number就是N个8位的字节序列,因此有大小端序,根据你实际的文本解析协议选择即可。lua默认是大端序。常用的例子是存储IMIE和ICCID

例如:local imei = rtos.toint64(misc.getImei(), “big”)


转载请注明原文链接:Luat如何实现64位整数的存储
喜欢 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址