arr={11,22,33, x={m=10, n=20}, y= {p=33, q=44, t={o=99, w={nx=200}}}, t= {xy=10}}
/*这里说明在for循环体内是不能使用操作符 “.” 来访问表中的表的*/
function test(tblName)
for i, v in pairs(tblName)
do
print(i, v, type(i), type(tblName.i), type(tblName[i]))
end
end
/*这里说明在不使用for等循环体内使用table中的表时,可以使用操作符“.”来完成,或者使用操作符“[]”而且必须嵌套的表明使用 双引号*/
print(type(arr.x), type(arr[x]), type(arr["x"]));
test(arr);
#include <stdio.h>
#include <string.h>
#include "lua.h"
#include "lauxlib.h"
#include "lualib.h"
/** file description:
*
* 使用luaL_dostring去加载字符串(首先使用luaL_loadstring加载函数,然后调用lua_Pcall才能加载到状态机中)和单独调用luaL_loadstring不同
*
*/
//这个东西定义成全局是方便之后其他函数不需要在传递,that's all
lua_State* L;
#define funcStr "backup={1,2,3, x={a=20