您的位置:首页 > 编程语言 > Lua

vs项目中使用c++调用lua

2014-07-08 09:02 549 查看
在前一篇文章中,我们已经讲了如何编译lua源码并生成lua.lib(请阅读
使用vs2010编译lua5.1源码生成lua.lib),在新的项目中,我们继续使用之前的项目来学习如何使用c++调用lua。如果有遇到unprotected
error in call to Lua API错误,请参考本文最后的做法。

一、创建项目

同样在该解决方案中,右键解决方案->添加项目->命名为testlua,选择win32控制台程序->不需要其他配置,选择完成。

二、配置项目

右键testlua项目->通用属性->框架和引用->添加新引用,指向lua项目。

右键testlua项目->配置属性->c/c++->常规->附加包含目录中,添加lua源码地址。

三、代码调用

#include "stdafx.h"
extern "C"  
{  
#include <lua.h>  
#include <lualib.h>  
#include <lauxlib.h>  
}  

int _tmain(int argc, _TCHAR* argv[])
{
	lua_State *L = lua_open();  
    luaL_openlibs(L);  
  
    const char *buf = "print('Hello World')";  
    luaL_dostring(L,buf);  
      
    lua_close(L);  
	return 0;
}

五、创建lua文件

在当前cpp文件所在的目录下,创建一个test.lua文件,文件里写加上lua代码,这里我写的是 print("hello world from lua file")

四、完成

直接运行,可以输出"hello world" 和 hello world from lua file。

如果遇到 unprotected error in call to Lua API (unable to get ModuleFileName)错误,请修改两个项目的字符集,项目右键->配置属性->常规->字符集,这里将“使用unicode字符集”修改为"使用多字节字符集"。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: