永发信息网

读取了一块内存,在LUA里直接输出,会提示USERDATA类型的错误。请问一下,我怎样才能知道我读取的数据是什

答案:2  悬赏:60  手机版
解决时间 2021-03-28 00:30
  • 提问者网友:听门外雪花风
  • 2021-03-27 20:33
读取了一块内存,在LUA里直接输出,会提示USERDATA类型的错误。请问一下,我怎样才能知道我读取的数据是什
最佳答案
  • 五星知识达人网友:青灯有味
  • 2021-03-27 21:54
我觉得你这里表述有错误
你说是在lua里输出 如果是lua里用print 相当于使用io.write(tostring(data))
任何类型的值都不会出现错误
你应该是在C里输出的时候print了一块lua里的userdata
所以你应该把输出的功能放到lua里 或者在C里把userdata里的数据读出来了再输出追问直接用tostring转换了输出的话,会显示USERDATA:0057B2D8 这种东西。
我修改读取长度,依然只有8位数字输出,这有点不对吧。
难道是我函数用错了么追答输出的8位 是userdata的地址 跟值没有关系追问那我想输出值应该怎么办追答userdata里加一个函数 用于返回里面的某一个值
然后在lua里print 那个函数的返回值
全部回答
  • 1楼网友:刀戟声无边
  • 2021-03-27 22:19
你说内存里数据是什么就是什么。。。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯