如何在VS2010中运行Lua文件?

我用的C++,在C++中要调用到Lua函数,如何在VS2010中运行Lua文件?
具体怎么配置?Lua我已经下载了,希望有经验的大侠们能给出详细步骤,我之前有在网上找到一些步骤了,但是里面有些不懂,如果大侠们是直接从网上找来的话,希望能懂的其中的步骤!
先谢谢回答的人了!
可能我表达的意思不够清楚,我不单单只是要编译Lua文件,而是在CPP文件里写C++,然后里面要用到某个lua文件(比如自己编写的my.lua)里的函数,然后究竟要怎么配置,方可使程序编译运行后不会说引用不到lua文件及它的库文件!麻烦有经验的朋友们说说!

简单,去下个LUA for windows,安装完毕后,到安装目录里找到lua51.dll和lua51.lib以及相关的头文件

然后是代码:
#include <stdio.h>
extern "C" {
#include "lua.h"
#include "lualib.h"
#include "lauxlib.h"
}
#pragma comment(lib, "lua5.1.lib")
lua_State* L;

int main ( int argc, char *argv[] )
{
/* initialize Lua */
L = lua_open();
/* load Lua base libraries */
luaL_openlibs(L);
luaL_dofile(L, "my.lua");//载入代码文件并执行
//假设里面的函数是这样的:function LuaFun(a,b) return a+b,a-b end

lua_getglobal(L, "LuaFun");
lua_pushnumber(L, 10);//压入参数1
lua_pushnumber(L, 20);//压入参数2
lua_call(L, 2, 2);//调用函数,2个参数,2个返回值
int a = luaL_checkinteger(L, 1);//第一个返回值
int b = luaL_checkinteger(L, 2);//第一个返回值
lua_pop(L, 2);//清理堆栈
printf("a:%d,b:%d\n",a,b);
/* cleanup Lua */
lua_close(L);
/* pause */
printf( "Press enter to exit..." );
getchar();
return 0;

}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-11-07
搭建编程环境的步骤和使用其他第三方C库没有什么区别,先设置好lua的3个头文件的路径,和一个lib 的路径,然后编写C代码。

你肯定已经看过相关的手册了,正确初始化lua_State以后,可以使用luaL_dofile执行磁盘上的lua脚本文件,也可以使用luaL_dostring执行脚本片段。后者相当于JScript里面的eval()函数,可以执行lua脚本文件中的全部或某一个特定部分。

如果担心找不到,就把它们放在同一个文件夹下,require会默认搜索包括当前路径下的lua、clibs文件夹追问

你好,我下载的lua库是5.1.5的,搭建环境就是用这个,然后在网上看到的一些程序,有些函数我在VS2010中使用时,识别不了,是版本的问题吗?是的话,那5.1.5与之前旧的版本相比改变的那些(比如函数名)你知道吗?或者知道怎么找出来吗?我去Lua的官方那里查看文档也找不到它有说到改变的地方!麻烦你的回答了!先谢谢你了

相似回答