Wie kann ich eine Tabelle in Lua, dann fügen Sie Werte aus dem C-API erstellen?
Frage
Hier ist, was ich bisher ... Es globale Tabelle erstellt „mod“ genannt, aber ich kann nicht scheinen, Indizes auf die Tabelle ...
hinzufügenlua_newtable(L);
lua_setglobal(L,"mod");
Lösung
Das Handbuch sagt:
void lua_setfield (lua_State *L, int index, const char *k);
Ist das äquivalent zu
t[k] = v
, wot
der Wert bei dem gegebenen gültigen Index undv
der Wert am oberen Ende des Stapels ist.Diese Funktion öffnet den Wert aus dem Stapel.
So, genauer gesagt: Drücken Sie, was Sie auf den Stapel hinzufügen möchten, dann lua_setfield
nennen. Zum Beispiel:
lua_pushnumber( L, 42 );
lua_setfield( L, -2, "answer_to_life_universe_and_rest" )
Dies fügt das Feld "answer_to_life ..." mit dem Wert 42
in die Tabelle.
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow