luaファイル読み込みデータをCへ

899 ワード

void load (lua_State *L, const char *fname, int *w, int *h) {
    if (luaL_loadfile(L, fname) || lua_pcall(L, 0, 0, 0))
        return;
        //rror(L, "cannot run config. file: %s", lua_tostring(L, -1));
    lua_getglobal(L, "width");
    lua_getglobal(L, "height");
    if (!lua_isnumber(L, -2))
        return;
        //error(L, "'width' should be a number
"); if (!lua_isnumber(L, -1)) return; //error(L, "'height' should be a number
"); *w = lua_tointeger(L, -2); *h = lua_tointeger(L, -1); } int main () { lua_State *L = luaL_newstate(); /* opens Lua */ luaL_openlibs(L); /* opens the standard libraries */ int w=0; int h=0; load(L,"test.lua",&w,&h); printf("w:%d,h:%d
",w,h); lua_close(L); return 0; }