美文网首页
Lua API (basic stack manipulatio

Lua API (basic stack manipulatio

作者: Lgnever | 来源:发表于2017-12-02 10:04 被阅读0次

    一:LUA_API int (lua_gettop)(lua_State* L)

    用途:返回栈顶元素的索引

    由于索引是从1开始,所以这个值就等于栈上的元素数量, 0则表示空

    二:LUA_API void (lua_settop)(lua_State* L, int idx)

    用途:将堆栈的栈顶设为idx这个索引。如果新的栈顶比原来的大,超出部分的新元素将被填为nil。如果index为 0 ,把栈上所有元素移除

    三:LUA_API void (lua_pushvalue)(lua_State* L, int idx)

    用途: 找到Idx位置的value,压入栈顶

    四:LUA_API void (lua_insert)(lua_State* L, int idx)

    用途:找到idx索引的位置,将栈顶的value放在这个位置

     会引发idx位置以上的元素向上移动一个位置,以便空出idx的位置

    五:LUA_API void (lua_remove)(lua_State* L, int idx)

    用途:找到idx索引的位置,删除这个位置上的value

    会引发idx以上的元素向下依次移动一个位置,栈减少一个元素

    六:LUA_API void (lua_replace)(lua_State* L, int idx)

    用途:将id索引的位置设置为栈顶的value, 然后移除栈顶value

    七:LUA_API int (lua_checkstack) (lua_State *L, int sz)

    八:LUA_API void (lua_xmove) (lua_State *from, lua_State *to, int n)

    相关文章

      网友评论

          本文标题:Lua API (basic stack manipulatio

          本文链接:https://www.haomeiwen.com/subject/dktnbxtx.html