-1
我測試了寫在一個Lua(5.2.1)腳本第一次一個文件,兩個版本之間交替:Lua的I/O工作,同時調試,但不是在程序正確
版本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);
}
這應該不是問題,但只是好奇,嘗試將文件更改爲'c:/test.txt'而不是'test.txt' – 2012-11-25 22:02:08
我試過了。同樣的事情 - 它在調試時工作,但在實際程序中失敗。 – M89
您的程序在執行此代碼時是否檢查錯誤? –