gpt4 book ai didi

lua - 如何创建名为 C-API 的 Lua 表

转载 作者:行者123 更新时间:2023-12-04 19:41:58 26 4
gpt4 key购买 nike

如何像这样从 C-API 创建 Lua 表:

TableName = {a, b, c}

如何设置表名?我只知道如何创建表和放置值,但不知道如何设置表名。

创建无名称表的代码:
lua_createtable(L, 0, 3);

lua_pushnumber(L, 1);
lua_setfield(L, -2, "a");

lua_pushnumber(L, 2);
lua_setfield(L, -2, "b");

lua_pushnumber(L, 3);
lua_setfield(L, -2, "c");

最佳答案

您只需要在最后添加这一行

lua_setglobal(L, "TableName");

但是,您的 C 代码并不等同于您的 Lua 代码。 C 代码对应于这个 Lua 代码:
TableName = { a=1, b=2, c=3 }

如果你想要 C 代码相当于
TableName = {"a", "b", "c"}


lua_pushliteral(L, "a"); lua_rawseti(L, -2, 1);
lua_pushliteral(L, "b"); lua_rawseti(L, -2, 2);
lua_pushliteral(L, "c"); lua_rawseti(L, -2, 3);

关于lua - 如何创建名为 C-API 的 Lua 表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37860316/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com