如何在Lua与C/C++之间实现table数据的交换

 我来答
折柳成萌
高粉答主

2017-11-03 · 繁杂信息太多,你要学会辨别
知道顶级答主
回答量:4.4万
采纳率:96%
帮助的人:6279万
展开全部
你说的应该是用c语言往lua里传递一组table数据吧
LUA的 C库有提供相关的接口 实现这个操作
不过接口并不是直接使用的 你需要对lua与c交互有足够的理解 自己去构造一个方法
相关的实现 你可以搜一下 应该有很多现成的代码
不过不推荐使用这种方法去操作数据 因为table表的结构多变 你很难构造一个通用的方法去完成多种table表的数据传递 那会导致这样一种情况 基本上每个table表的传递 你都要重新构造一个c的方法 这种工作量算下来不划算
更合理的方式是 对于table表里对应的c中的数据 你给出lua中可以访问的接口 在lua中构造这个table表 这样操作更灵活
至于把luatable数据传递给c 需要说明的是 c中并不存在table这种数据结构 如果你要这么做
你需要在c端自己构造一个方法去解析table 这里也不推荐这么做 理由同上 更好的方法是把table表中的元素拆解出来 需要传递的元素在c端做一个接口
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式