lua_next

cpp 复制代码
       lua_pushnil(L);
        while(lua_next(L, -2))
        {
            // 栈状态:key : -2  value : -1
            // do something 
            lua_pop(L, 1);
        }

lua_next 先弹出一个值, 再放一对pair 到栈上, 参数 index 是表的位置

调用后: -1:value -2:key

因为会先弹出一个值,需要先pushnil ,用于弹出。

循环内 pop 后,将value弹出, 下次调用 lua_next时,将 key 弹出,再压入一对 kv

网上讲那么复杂。

相关推荐
12亡灵归来341 天前
Postman高级用法:自动化测试与Mock
测试工具·lua·postman
chxii1 天前
lua 下载和配置环境变量
开发语言·lua
上海合宙LuatOS2 天前
LuatOS扩展库API——【httpplus】HTTP客户端
网络·物联网·网络协议·http·lua·luatos
上海合宙LuatOS2 天前
LuatOS扩展库API——【 lbsLoc2】免费版单基站定位
数据库·物联网·oracle·junit·lua·luatos
上海合宙LuatOS2 天前
LuatOS扩展库API——【httpdns】使用HTTP进行域名解析
网络·物联网·网络协议·http·lua·luatos
小同志003 天前
请求两个注解 @PathVariable + @RequestPart
开发语言·lua·请求注解
小陈的进阶之路5 天前
postman-mcp-server
测试工具·lua·postman
上海合宙LuatOS7 天前
LuatOS扩展库API——【extp】触摸控制
嵌入式硬件·物联网·lua·luatos
上海合宙LuatOS7 天前
LuatOS扩展库API——【exvib】震动检测
开发语言·物联网·lua·luatos
TechExplorer3658 天前
Postman 9.12 安装、汉化、禁用更新
测试工具·lua·postman