在 LuaJIT FFI 错误信息中使用结构体名称

当我在 LuaJIT FFI 中出现错误时,可能会收到类似“无法将结构体 129 转换为结构体 141”的错误消息。我该如何理解哪些结构体是指的呢?在我的代码中,所有 C 结构体都有一个 typedef,当然 FFI 知道这一点,因为它可以在 ffi.new 中使用;我该如何让 LuaJIT 使用此 typedef 作为名称?

点赞
用户9204
用户9204

在查看其他 LuaJIT 问题时找到的答案:我需要将结构体声明为 typedef struct $name { ... } $name,而不是我之前写的 typedef struct { ... } $name

2016-05-22 10:53:06