Lua.lib一般大家都没有,它是怎么来的呢,其实很简单。
大家都知道Lua是跨平台,开源。所以我们能看到内部的很多代码,这样就为了lib提供方便。
那么把答案说下吧,Lua.lib是可以自动生成的。
下边详解步骤:
1.VC工程,win32 static library,名字就叫lua。
2.到lua根路径下是把src文件中所有的*.c,*.h加载进来。
3.debug和release随你,编译。
4.这个lua.lib你就可以随地使用了,当然是在windows下。
/*vc example
* $ chenxiong
$ 2009.11.12
*/
extern "C" {
#include "lua.h"
#include "lualib.h"
#include "lauxlib.h"
}
#pragma comment(lib, "lua.lib")
#include <stdio.h>
#include <string>
#include <conio.h>
using namespace std;
//"luatest.lua"
int main (void)
{
lua_State *L = lua_open(); /* 初始化opens Lua 取得相关的Lua状态基*/
luaL_openlibs(L); //载入所有lua标准库
luaL_dofile(L,"luatest.lua"); //执行luatest.lua,将assort函数加入luatest.lua栈中
lua_getglobal(L,"assort"); //通过函数名取出函数地址压入栈
lua_pushstring(L,"heihei"); //将第一个参数压入栈
lua_pcall(L,1,0,0); //调用assort函数
int i = (int)lua_tonumber(L,-1);
lua_pop(L,1);
printf("is %d/n",i);
lua_close(L);
return 0;
}
--[[luatest.lua....测试函数
2009.11.12]]
i = -1
bill="hello world"
function assort(bill)
d=string.len(bill)
if d >= 5 then
i=1
else
i=0
end
return i
end
print(assort(bill))