参数入栈其实就是将指定类型的值push到栈中,如 lua_pushnumber 、lua_pushinteger、lua_pushlightuserdata 、luaL_pushinteger、lua_pushnil、lua_pushcfunction 和lua_pushboolean。这些函数都在lapi.c中 //lapi.c LUA_API void lua_pushnumber (lua_State *L, lua_Number n) { lua_lock(L); setfltvalue...
lua_pushinteger void lua_pushinteger (lua_State *L, lua_Integer n); 把n作为一个数字压栈。 lua_pushlightuserdata void lua_pushlightuserdata (lua_State *L, void *p); 把一个 light userdata 压栈。 userdata 在 Lua 中表示一个 C 值。 light userdata 表示一个指针。它是一个像数字一样的值:...
"information");// 将全局表压入栈lua_pushstring(L,"name");// 将要修改的变量名压入栈lua_pushstring(L,"AlbertS");// -->lua_pushstring用法lua_rawset(L,-3);lua_pushstring(L,"age");lua_pushinteger(L,20);// -->lua_pushinteger用法lua_rawset(L,-3);lua...
lua_pushinteger(L, 10); lua_pushstring(L, "Hello"); lua_pushboolean(L, 1); int stackSize = lua_gettop(L); // 获取当前栈的大小 printf("Stack size before settop: %d\n", stackSize); lua_settop(L, 2); // 设置栈顶索引为 2 stackSize = lua_gettop(L); // 获取调整后栈的大...
lua_pushinteger 压入整型数据 lua_pushunsigned 压入无符号整型数据 lua_pushlstring 压入字符串类型数据,同时需要传入这个字符串长度 lua_pushstring 压入字符串类型数据 voidlua_pushnil(lua_State*L);voidlua_pushboolean(lua_State*L,intbool);voidlua_pushnumber(lua_State*L,lua_Number n);voidlua_pushin...
lua_pushboolean(L,bTest); lua_pushnumber(L,f); lua_pushinteger(L,n); lua_pushlstring(L,str,strlen(str)); lua_pushstring(L,str); 1. 2. 3. 4. 5. 6. lua栈默认20个位置,可以通过int lua_checkstack(L,n)检查是否有足够的空间 ...
在这种情况下,调用lua_toboolean,lua_tonumber,lua_tointeger会返回0,其它函数会返回NULL。通常不使用lua_is*函数,只需在调用它们之 后测试返回结果是否为NULL就可以了。 lua_pushnumber(L, 100) lua_tonumber(L, 1)-->100 lua_pushinteger(L, 200) lua_tointeger(L, -1)-->200 ...
lua_pushnumber void lua_pushnumber (lua_State *L, lua_Number n); 把一个数字n压栈。 lua_pushstring void lua_pushstring (lua_State *L, const char *s); 把指针s指向的以零结尾的字符串压栈。 Lua 对这个字符串做一次内存拷贝(或是复用一个拷贝),因此s处的内存在函数返回后,可以释放掉或是重...
lua_pushinteger(L,i); lua_pushnumber(L,i+0.1); lua_settable(L,-3);//jeason } lua_pushstring(L,"str"); lua_pushstring(L,"string"); lua_settable(L,-3); return 2; } 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
lua_pushnumber(lua_State*, lua_Number): 将双精度值压入栈中 lua_pushinteger(lua_State*, lua_...