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

网上讲那么复杂。

相关推荐
极客先躯1 天前
老版本Postman请求脚本编写指南:从Async/Await到回调函数的完整迁移方案
测试工具·lua·postman
oMcLin2 天前
如何在 Debian 11 上配置并调优 Nginx 与 Lua 脚本,提升高流量 API 网关的性能与安全性?
nginx·debian·lua
悟能不能悟4 天前
怎么使用postman批量的给api做测试
测试工具·lua·postman
最贪吃的虎6 天前
Redis其实并不是线程安全的
java·开发语言·数据库·redis·后端·缓存·lua
_200_7 天前
Lua 流程控制
开发语言·junit·lua
Kang.Charles7 天前
Lua UI系统框架逻辑详解
ui·lua
oMcLin7 天前
如何在 Rocky Linux 8.6 上配置并调优 Nginx 与 Lua 脚本,提升 API 网关的性能与并发处理能力
linux·nginx·lua
姓蔡小朋友9 天前
LUA脚本
开发语言·junit·lua
金融新世界9 天前
推动产业升级:倒逼转型创新与重构产业链格局
lua
oMcLin9 天前
如何在 Debian 11 上配置并优化 Nginx 与 Lua 脚本,提升高并发网站的动态请求处理能力?
nginx·debian·lua