请教一个Lua的问题,麻烦你了。我要从C的函数里给Lua脚本返回一个数组,我是这么写的: lua_newtable(L);//创建表 lua_pushnumber(L,1);//把value压入 lua_rawseti(L,-2,1);//设置t[1]=v lua_pushnumber(L,2); lua_rawseti(L,-2,2); lua_pushnumber(L,3); lua_rawseti(L,-2,3); return 1;在Lua脚本中这样使用:data = testext.Test()for i=1,table.getn(data),1 do print(data [i]) end程序执行完后会出现dbgheap错误。调试显示是在解释器执行lua_close(L)的时候,释放内存发生错误。我查看了lua的maillist,里面也说就是这样返回一个数组的,但是没有提到有错误发生。如果我返回一般的Table就没有问题,比如 lua_newtable(L); lua_pushstring(L, "mydata"); lua_pushnumber(L,66); lua_settable(L,-3); return 1;请问这是为什么呢?难道是Lua的bug吗?
谢谢