学习Lua,使用devcpp
官方网站 The Programming Language Lua http://www.lua.org/
Lua 5.1 参考手册 http://www.codingnow.com/2000/download/lua_manual.html
怎么样使用VC编译Lua,参见 Lua入门 - 城市胡同 http://www.wujianrong.com/archives/2007/10/lua.html,我的这篇文章基本上此文的翻版,可以说将它从VC翻译到DevCpp中。
这次先讲使用Lua动态链接库,Lua 5.1.4 http://www.lua.org/ftp/lua-5.1.4.tar.gz 下载这个文件,解压缩到任意文件夹下,我把它们放在devcpp程序目录下了,你完全可以把它们放在其他地方.
在DevC++你将需要进行下列步骤:
- 创建一个新的控制台工程。
- 打开【工程】菜单中的【工程属性】。
- 在【文件/目录】的【包含文件目录】页添加Lua的头文件目录。
- 在【参数】连接器中加入lua5.1.lib,这个通过点击右下角的那个【加入库或者对象】选择lua5.1.lib即可实现。
- 因为程序运行时需要lua5.1.lib文件,你就需要把Lua的库目录加入系统的path中,当然你也可以把这个文件拷贝到你的工程文件所在目录中(Lua的便携性得到体现了吧)。
此后,你就可以在此工程中使用Lua啦。
下面代码均源自Lua入门 - 城市胡同 http://www.wujianrong.com/archives/2007/10/lua.html
下面是cpp程序文件
- //LuaTestMail.cpp
- #include<cstdlib>
- #include<iostream>
- extern"C"{
- #include<lua.h>
- #include<lualib.h>
- #include<lauxlib.h>
- }
- usingnamespacestd;
- intmain(intargc,char*argv[])
- {
- /*Lua解释器指针*/
- lua_State*L;
- /*初始化Lua*/
- L=lua_open();
- /*载入Lua基本库*/
- luaL_openlibs(L);
- /*运行脚本*/
- luaL_dofile(L,"test.lua");
- /*清除Lua*/
- lua_close(L);
- /*暂停*/
- system("PAUSE");
- returnEXIT_SUCCESS;
- }
这个程序简短且直接,下面做一点说明:
- lua_open()返回一个指向Lua解释器的一个指针。
- luaL_openlibs()用于装载Lua库,它提供了一些简单的函数,如:print。
- 通过调用luaL_dofile()执行脚本。它的作用是读取并解释脚本。
- 最后,通过lua_close()函数关闭Lua。
新建立一个名字是test.lua的文件,内容
- --simpletest
- print("HelloWorld")