我正在测试第一次在 Lua (5.2.1) 脚本中写入文件,在两个版本之间交替:
版本 1
local ofile = io.open("save.txt", "w")
ofile:write("Writing to file...")
ofile:close()
版本 2
io.output("save.txt")
io.write("Writing to file...")
io.close()
在 ZeroBrane Studio 中进行调试时,这两种方法都可以正常工作,但是当将其插入我的程序的脚本中时,不会写入该文件,并且在该点之后出现的任何代码显然都不会执行。
顺便说一句,我在我的程序中包含了 I/O 库。
lua_State *lua = luaL_newstate();
static const luaL_Reg lualibs[] = {
{ "base", luaopen_base },
{ "io", luaopen_io },
{ "string", luaopen_string },
{ "table", luaopen_table },
{ NULL, NULL}
};
const luaL_Reg *lib = lualibs;
for(; lib->func != NULL; lib++) {
lib->func(lua);
lua_settop(lua, 0);
}