如何将数组作为表从C函数返回给lua?

我需要一个C函数来调用lua脚本。我将从该函数返回一个数组作为表。我使用了代码打击但崩溃了,有人可以告诉我如何使用它吗?


struct Point {
    int x, y;
}
typedef Point Point;


static int returnImageProxy(lua_State *L)
{
    Point points[3] = {{11, 12}, {21, 22}, {31, 32}};

    lua_newtable(L);

    for (int i = 0; i  3; i++) {
        lua_newtable(L);
        lua_pushnumber(L, points[i].x);
        lua_rawseti(L, -2, 2*i+1);
        lua_pushnumber(L, points[i].y);
        lua_rawseti(L, -2, 2*i+2);
        lua_settable(L,-3);
    }

    return 1;   // I want to return a Lua table like :{{11, 12}, {21, 22}, {31, 32}}
}

亚历克斯

需要更改lua_settable@lhf提及的内容。另外,您总是将子表的前2个索引添加到

typedef struct Point {
    int x, y;
} Point;


static int returnImageProxy(lua_State *L)
{
    Point points[3] = {{11, 12}, {21, 22}, {31, 32}};

    lua_newtable(L);

    for (int i = 0; i < 3; i++) {
        lua_newtable(L);
        lua_pushnumber(L, points[i].x);
        lua_rawseti(L, -2, 1);
        lua_pushnumber(L, points[i].y);
        lua_rawseti(L, -2, 2);

        lua_rawseti(L, -2, i+1);
    }

    return 1;   // I want to return a Lua table like :{{11, 12}, {21, 22}, {31, 32}}
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

ServiceStack Redis,如何将Lua表作为列表返回

来自分类Dev

如何将网格作为函数返回?

来自分类Dev

如何将数组从函数“返回”到c中的main

来自分类Dev

如何将函数指针作为const返回?

来自分类Dev

如何将函数指针作为const返回?

来自分类Dev

如何将数组列表作为整数返回

来自分类Dev

如何将引导表作为detailFormatter返回

来自分类Dev

我在Lua堆栈上有一张桌子。如何将函数压入返回此表的堆栈中?

来自分类Dev

如何将char数组作为字节从C JNI函数传递给Java方法[]

来自分类Dev

如何将常量数组作为参数传递给C ++函数/方法

来自分类Dev

如何将char数组从C JNI函数作为字节传递给Java方法[]

来自分类Dev

如何将float数组和float作为参数传递给C中的函数

来自分类Dev

如何将数组作为函数参数传递?

来自分类Dev

PHP:如何将数组作为函数参数传播

来自分类Dev

如何将数组作为函数参数传递?

来自分类Dev

如何将C ++函数公开给lua脚本?

来自分类Dev

如何将值从递归函数返回到数组

来自分类Dev

如何将多个表传递给 VBA 函数并返回?

来自分类Dev

Lua表函数返回

来自分类Dev

如何将函数作为模板参数传递,其中函数返回与模板参数相同?

来自分类Dev

如何将这些变量推入数组并将其整个结果作为单个数组返回

来自分类Dev

如果传递的函数也将函数作为参数,如何将函数作为参数传递给C中的函数?

来自分类Dev

如何将函数的二维数组参数作为内部函数的参数传递

来自分类Dev

如果不知道数组大小,如何将函数数组作为参数传递

来自分类Dev

C:如何将多个值从函数返回到main

来自分类Dev

C语言如何将指针从函数返回到指针

来自分类Dev

如何将 bool 作为 json 返回?

来自分类Dev

C-返回数组作为函数参数

来自分类Dev

如何将结构作为参数传递给Java函数或如何从jni返回到Java

Related 相关文章

  1. 1

    ServiceStack Redis,如何将Lua表作为列表返回

  2. 2

    如何将网格作为函数返回?

  3. 3

    如何将数组从函数“返回”到c中的main

  4. 4

    如何将函数指针作为const返回?

  5. 5

    如何将函数指针作为const返回?

  6. 6

    如何将数组列表作为整数返回

  7. 7

    如何将引导表作为detailFormatter返回

  8. 8

    我在Lua堆栈上有一张桌子。如何将函数压入返回此表的堆栈中?

  9. 9

    如何将char数组作为字节从C JNI函数传递给Java方法[]

  10. 10

    如何将常量数组作为参数传递给C ++函数/方法

  11. 11

    如何将char数组从C JNI函数作为字节传递给Java方法[]

  12. 12

    如何将float数组和float作为参数传递给C中的函数

  13. 13

    如何将数组作为函数参数传递?

  14. 14

    PHP:如何将数组作为函数参数传播

  15. 15

    如何将数组作为函数参数传递?

  16. 16

    如何将C ++函数公开给lua脚本?

  17. 17

    如何将值从递归函数返回到数组

  18. 18

    如何将多个表传递给 VBA 函数并返回?

  19. 19

    Lua表函数返回

  20. 20

    如何将函数作为模板参数传递,其中函数返回与模板参数相同?

  21. 21

    如何将这些变量推入数组并将其整个结果作为单个数组返回

  22. 22

    如果传递的函数也将函数作为参数,如何将函数作为参数传递给C中的函数?

  23. 23

    如何将函数的二维数组参数作为内部函数的参数传递

  24. 24

    如果不知道数组大小,如何将函数数组作为参数传递

  25. 25

    C:如何将多个值从函数返回到main

  26. 26

    C语言如何将指针从函数返回到指针

  27. 27

    如何将 bool 作为 json 返回?

  28. 28

    C-返回数组作为函数参数

  29. 29

    如何将结构作为参数传递给Java函数或如何从jni返回到Java

热门标签

归档