Ecco quello che ho finora ... Si crea tabella globale denominata "mod", ma io non riesco a aggiungere indici a tavola ...Come posso creare una tabella in Lua, quindi aggiungere valori dall'API C?
lua_newtable(L);
lua_setglobal(L,"mod");
Ecco quello che ho finora ... Si crea tabella globale denominata "mod", ma io non riesco a aggiungere indici a tavola ...Come posso creare una tabella in Lua, quindi aggiungere valori dall'API C?
lua_newtable(L);
lua_setglobal(L,"mod");
Il manual dice:
void lua_setfield (lua_State *L, int index, const char *k);
esegue l'equivalente di
t[k] = v
, dovet
è il valore alla data indice valido ev
è il valore in cima alla pila.Questa funzione consente di inserire il valore dalla pila.
Quindi, più precisamente: spingere quello che si desidera aggiungere nello stack, quindi chiamare lua_setfield
. Per esempio:
lua_pushnumber(L, 42);
lua_setfield(L, -2, "answer_to_life_universe_and_rest")
Questo inserisce il campo "answer_to_life ..." con il valore 42
nella tabella.
Solleva un errore ... –
'lua_pushnumber (L, 42);' – lhf
nvm: P Ho avuto le righe confuse –