概述
文章目录
- lua_tonumber
lua_tonumber
- 特码的好像lua_tonumber不自动出栈哦!
- 哎,不出就不出把
lua_tonumber(L, 1);
lua_tonumber(L, 2);
- 分别代表从左到右的参数!
#include <stdio.h>
extern "C" {
#include "lua.h"
#include "lualib.h"
#include "lauxlib.h"
}
/* 指向lua解释器的指针 */
lua_State* L;
static int average(lua_State *L)
{
/* 得到参数的个数 */
int n = lua_gettop(L);
double sum = 0;
int i;
//top is right arg
/* 循环遍历参数 */
for (i = 1; i <= n; i++)
{
/* 所有参数求和 */
sum += lua_tonumber(L, i);
}
/* 压入平均值 */
lua_pushnumber(L, sum / n);//return1
/* 压入和 */
lua_pushnumber(L, sum);//return2
/* 返回返回值的个数 */
return 2;
}
int main ( int argc, char *argv[] )
{
/* 初始化Lua */
L = luaL_newstate();
/* 载入Lua基本库 */
luaL_openlibs(L);
/* 注册自定义函数 */
lua_register(L, "average", average);
/* 执行avg.lua文件 */
luaL_dofile(L, "avg.lua");
/* 关闭Lua */
lua_close(L);
return 0;
}
- avg.lua
print(average(12,23))
lua_tonumber和lua_tonumberx的区别在于lua_tonumberx多一个int*参数,用于返回操作是否成功。
- lua_tonumber返回double
- lua_tointeger返回long long
最后
以上就是尊敬小刺猬为你收集整理的lua_tonumber不自动出栈哦!lua_tonumber的全部内容,希望文章能够帮你解决lua_tonumber不自动出栈哦!lua_tonumber所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复