天天看点

VS2013之c++调用Lua5.3.x方法

访问我的个人博客 秋码个人博客

打开VS2013 IDE,创建一个空的控制台项目。

VS2013之c++调用Lua5.3.x方法
VS2013之c++调用Lua5.3.x方法

然后对项目进行引用库的配置。

VS2013之c++调用Lua5.3.x方法
VS2013之c++调用Lua5.3.x方法

这是我编译Lua源码所得到的静态库。

VS2013之c++调用Lua5.3.x方法

在这就是附加库的位置。

VS2013之c++调用Lua5.3.x方法
VS2013之c++调用Lua5.3.x方法

也就是LuaLib.lib所在的目录。

最后配置Lua源码目录,因为需要用到Lua头文件。

VS2013之c++调用Lua5.3.x方法
VS2013之c++调用Lua5.3.x方法

在源文件下创建一个cpp文件,main.cpp文件内容如下:

#include <iostream>
#include <stdlib.h>

#ifdef __cplusplus

extern "C" {
    #include "lua.hpp"
    #include "lualib.h"  
    #include "lauxlib.h" 
}
#else  
	#include "lua.hpp"
	#include "lualib.h"  
	#include "lauxlib.h"  
#endif

/*Lua解释器指针*/
lua_State* L;

int main(int argc, char* argv[]){
	L = luaL_newstate();
	/* 载入Lua基本库 */
	luaL_openlibs(L);
	/* 运行脚本 */
	luaL_dofile(L, "addFun.lua");
	/* 清除Lua */
	lua_close(L);
	system("pause");
	return 0;
}
           

addfun.lua文件如下:

print("lua script addfun.lua have been load ")  
  
  
function showinfo()  
print("welcome to  lua world ")  
end  
  
function showstr(str)  
print("The string you input is " .. str)  
end  
  
  
function add(x,y)  
return x+y;  
end  
           

编译生成。

VS2013之c++调用Lua5.3.x方法

项目结构如下:

VS2013之c++调用Lua5.3.x方法