在我的 C 文件中,我这样调用 luaL_dostring:
luaL_dostring(L, "return 'somestring'");
如何在 C 语言中读取此行后的返回值?
谢谢。
编辑: 感谢您的帮助。
我想添加它以在检索元素后将其删除,您使用:
lua_pop(L, 1);
最佳答案
该值保留在 Lua 堆栈中。为了检索值,使用 lua_toXXXX
函数之一,将 -1 作为索引参数(-1 指堆栈的顶部)。或者,使用 lua_gettop()
获取堆栈的大小。
在你的情况下,使用这个:
luaL_dostring(L, "return 'somestring'");
const char * str = lua_tostring(L, -1);
关于C&Lua : luaL_dostring return value,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3677792/