今天刚刚接触lua,c/c++程序怎么调用lua呢?
配置:
1.下载lua源码 http://www.lua.org/download.html
2.vs 2015 新建一个工程,名为lua。选择C++ WIN32空项目,应用程序类型选择静态库。
3.右击头文件,选择添加现有项,将下载好的lua源码中的.h添加到头文件中,.hpp除外
4.右击源文件,选择添加现有项,将下载好的lua源码中的.c文件添加到源文件中,lua.c以及luac.c除外
5.开始编译注意选择debug
6.编译好之后去工程所在的文件夹找lua.lib文件
新建一个简单的程序
1.建立一个C++ win32控制台应用程序的空项目
2.与上述添加头文件与源文件方法相同
3.将配置过程中编译好的lua.lib拷贝到本项目下
4.配置程序属性
右击项目,选择属性。链接器-> 输入->附加依赖项->lua.lib所在的路径添加到这里
5.来一段简单的程序
#include <iostream>
#include "string.h"
using namespace std;
extern "C"
{
#include "lua.h"
#include "lauxlib.h"
#include "lualib.h"
}
int main()
{
//1.创建一个State
lua_State* L = luaL_newstate();
//2.入栈操作
lua_pushstring(L, "I am so beautiful");
lua_pushnumber(L, 10);
//3.取消操作
if (lua_isstring(L, 1))
{
cout << lua_tostring(L, 1) << endl;
}
if (lua_isnumber(L, 2))
{
cout << lua_tonumber(L, 2) << endl;
}
//4.关闭state
lua_close(L);
system("pause");
return 0;
}
6.生成解决方案,最终的界面如下: