我有运行嵌入式 Lua 的 ac 程序。截至目前,这只是一个你好世界。不过,在继续之前,我希望能够将 lua 输出发送到 以外的其他地方stdout
,以便我可以以某种方式对其进行操作。这是我的代码:
#include <stdio.h>
#include <lua.h>
#include <lauxlib.h>
#include <lualib.h>
int main() {
lua_State *luaVM = luaL_newstate();
//char result[1024];
if (luaVM == NULL) {
printf("Error initializing lua!\n");
return -1;
}
luaL_openlibs(luaVM);
luaL_dostring(luaVM, "print(\"hello world!\")");
//Somehow put the output into result
//printf("%s\n%s\n", result, result);
lua_close(luaVM);
return 0;
}
例如,我想使用result
在评论中看到的 lua 代码的结果打印两次。这可以做到吗?