我试图从Lua表中获取值。这就是我在Program.cpp中所写的:
lua_State* lua = luaL_newstate();
luaL_openlibs(lua);
luaL_dofile(program->getLuaState(), "Script.lua");
lua_getglobal(lua, "table");
lua_pushstring(lua, "x");
lua_gettable(lua, -2);
printf("%i", lua_tonumber(lua, -1));我在Script.lua上写了这个:
table = {x = 12, y = 32}问题是这只会在控制台中写入0。我检查了lua文件是否正确加载。我做错了什么?
发布于 2015-03-18 20:58:58
将%i更改为%g。lua_tonumber返回浮动或双倍,而不是int。
https://stackoverflow.com/questions/29132283
复制相似问题