闭上眼睛看见人脸:C++返回table给lua
来源:百度文库 编辑:中财网 时间:2024/05/22 00:50:04
//定义函数(返回table)
int func_return_table(lua_State *L)
{
lua_newtable(L);//创建一个表格,放在栈顶
lua_pushstring(L, "mydata");//压入key
lua_pushnumber(L,66);//压入value
lua_settable(L,-3);//弹出key,value,并设置到table里面去
lua_pushstring(L, "subdata");//压入key
lua_newtable(L);//压入value,也是一个table
lua_pushstring(L, "mydata");//压入subtable的key
lua_pushnumber(L,53);//value
lua_settable(L,-3);//弹出key,value,并设置到subtable
lua_settable(L,-3);//这时候父table的位置还是-3,弹出key,value(subtable),并设置到table里去
lua_pushstring(L, "mydata2");//同上
lua_pushnumber(L,77);
lua_settable(L,-3);
return 1;//堆栈里现在就一个table.其他都被弹掉了。
}
返回的表结构是:
{
"mydata" = 66,
"mydate2" = 77,
"subdata" =
{
"mydata" = 53
}
int func_return_table(lua_State *L)
{
lua_newtable(L);//创建一个表格,放在栈顶
lua_pushstring(L, "mydata");//压入key
lua_pushnumber(L,66);//压入value
lua_settable(L,-3);//弹出key,value,并设置到table里面去
lua_pushstring(L, "subdata");//压入key
lua_newtable(L);//压入value,也是一个table
lua_pushstring(L, "mydata");//压入subtable的key
lua_pushnumber(L,53);//value
lua_settable(L,-3);//弹出key,value,并设置到subtable
lua_settable(L,-3);//这时候父table的位置还是-3,弹出key,value(subtable),并设置到table里去
lua_pushstring(L, "mydata2");//同上
lua_pushnumber(L,77);
lua_settable(L,-3);
return 1;//堆栈里现在就一个table.其他都被弹掉了。
}
返回的表结构是:
{
"mydata" = 66,
"mydate2" = 77,
"subdata" =
{
"mydata" = 53
}
}
如何让TABLE只返回findkey找到的一条记录?
C语言返回值问题
Lua 教程下载地址
“SQL返回错误信息:The table 'ip_check' is full”是什么意思
C Hard Disk BOOT I/O table 是什么意思啊?
函数的返回值(C语言)
如何在DOS返回根目录即C:
(C++)mollac返回NULL意味着什么?
c语言返回不了文字模式?
c语言 bioskey函数返回值问题
C语言中函数如何返回字符串?
问一个lua的问题
c语言里边有很多所谓的“返回值”,到底什么是返回值呀?
The table is made () wood.A.from B.up C.in D.of
C++builder里面的那个table是在那个控件上的?
C语言如何写有返回值的函数
在C语言中关于返回值return的用法
(C语言)返回指向数组的指针的函数
c怎么使一个函数返回2个值?
[C语言]为什么swap函数返回的是char类型?
C语言中imagesize函数的返回值是什么?
table tent
table show
table是什么意思