3

我有这个数组:

a = {{4,2,2,6}, {2,1,1,2}}

如何从该数组检索索引到 C 程序?

例如:

a[1] -- {4,2,2,6}
a[1][2] -- 2
4

2 回答 2

6

您可以使用该lua_gettable方法。但是,有一些重要的注意事项:

  1. Lua 数组从索引 1 开始,而不是 0。
  2. 您需要通过 将索引推送到 lua 堆栈上lua_pushinteger
  3. 键被索引元素“替换”。
于 2014-08-14T02:35:05.263 回答
3

尝试这个:

lua_getglobal(L,"a")
lua_rawgeti(L,-1,1)
lua_rawgeti(L,-1,2)

在此之后, 的值a[1][2]将位于堆栈顶部。堆栈还将包含aand a[1],您可能希望在完成后弹出它(它们留在堆栈中,以防您要检索多个值)。

于 2014-08-14T02:39:13.340 回答