C++ 调用Lua简单例子
来源:互联网 发布:廖承宇直播软件 编辑:程序博客网 时间:2024/05/20 11:47
C++ 调用Lua简单例子
首先配置环境,百度文库里这个讲的很详细
http://wenku.baidu.com/view/7912da3667ec102de2bd8957.html
环境配置好之后,我也写了个简单的调用
main.cpp
1 #include <stdio.h> 2 3 extern "C"{ 4 #include "lua.h" 5 #include "lualib.h" 6 #include "lauxlib.h" 7 }; 8 9 10 lua_State *L;11 int luaAdd(int x, int y)12 {13 int sum;14 lua_getglobal(L, "add");15 lua_pushnumber(L, x);16 lua_pushnumber(L, y);17 lua_call(L, 2, 1);18 sum = (int)lua_tonumber(L, -1);19 lua_pop(L, 1);20 return sum;21 }22 23 int main(int argc, char *argv[])24 {25 int sum = 0;26 L = lua_open();27 luaopen_base(L);28 luaL_openlibs(L);29 luaL_loadfile(L, "add.lua");30 lua_pcall(L, 0, LUA_MULTRET, 0);31 sum = luaAdd(10, 15);32 printf("The sum is %d\n", sum);33 lua_close(L);34 35 return 0;36 }
add.lua
1 --简单的例子,只做整数加法2 function add(x, y)3 return x + y4 end
当编译之后没有问题,执行时出了点问题,如下:
PANIC: unprotected error in call to Lua API (attempt to call a nil value)
结果google了一下,说是luaL_loadfile换成luaL_dofile,当时我用的就是luaL_dofile,这是可能的一个原因,但不是我的。
最终找到原因,add.lua放的位置不对,我将它放在vs的和.cpp文件相同的目录下不行,之后放到里面的工程目录即可。
author:good90
分类: Lua
- c 调用lua 最简单例子
- c调用lua 配置简单例子
- C语言调用lua的简单例子
- C++ 调用Lua简单例子
- C++ 调用Lua简单例子
- C++ 调用Lua简单例子
- LUA与C++互相调用简单例子
- C++调用lua简单的例子
- lua调用c++dll 简单案例
- 关于Lua调用C的简单demo
- C调用LUA创建一个简单的LUA解释器
- 简单C++调用lua函数的小例子
- C++调用Lua读取配置文件的一个简单例子
- C++调用lua例子
- Lua调用c++例子
- 简单C++调用lua函数及C++和lua相互函数调用小例子
- 简单C++调用lua函数及C++和lua相互函数调用小例子
- 简单C++调用lua函数及C++和lua相互函数调用小例子
- 节省你的内存
- API函数大全
- ACM计算几何题目推荐
- Win7下ADB不能识别设备的可能原因
- window.dialogArguments的用法
- C++ 调用Lua简单例子
- Window 消息大全使用详解
- 某QQ群聊天记录
- 松下伺服驱动器A4 串口通讯协议 中文
- jsp的request及增进研究【2】--编写代码解释Get及Post来的数据
- Windows CE 电源管理
- C#界面库
- org.apache.camel.ResolveEndpointFailedException: Failed to resolve endpoint: null due to
- 公开发布版的Windows Azure 基础结构服务中的 SQL Server – 文档和最佳实践(已更新),还有即将发布的博客