• 做一个幸福的人,读书,旅行,努力工作,关心身体和心情。
  • 不管有没有人爱,也要努力做一个可爱的人。不埋怨谁,不嘲笑谁,也不羡慕谁,阳光下灿烂,风雨中奔跑,做自己的梦,走自己的路。

C 语言对Lua Table的读写

Lua编程 lcq 5年前 (2013-08-20) 554次浏览 0个评论

C语言读取Lua中的表

C语言读取Lua table会稍微复杂一点,不过Lua的table是一种重要的数据结构,因此对table的读写也是很重要的内容。读取Table基本需要如下几步:

1、使用lua_getglobal将表从Lua命名空间读取到虚拟堆栈中;

2、使用lua_pushstring将要读取的字段的名称压入堆栈;

3、使用函数lua_gettable,这个函数会将table和key出栈,然后把对应字段的值入栈;

4、最后使用lua_toXXXX从堆栈中读取值并使用lua_pop将数值出栈将堆栈恢复到调用前的样子;


C语言写入Lua中的表

1、将要写入的table放入堆栈,可以新建也可以写入现有table;

2、将要写入的键压入堆栈;

3、将要写入的值压入堆栈;

4、调用lua_settable执行table的写入

5、如果是新建table的话,最后需要使用lua_setglobal,将修改后的table写会lua全局变量。


代码如下:

Lua代码:

运行结果:


乐趣公园 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明C 语言对Lua Table的读写
喜欢 (0)
发表我的评论
取消评论

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

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

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