学习Lua,使用devcpp

来源:互联网 发布:ebsco期刊论文数据库 编辑:程序博客网 时间:2024/04/29 16:09

官方网站 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++你将需要进行下列步骤:

  1. 创建一个新的控制台工程。
  2. 打开【工程】菜单中的【工程属性】。
  3. 在【文件/目录】的【包含文件目录】页添加Lua的头文件目录。
  4. 在【参数】连接器中加入lua5.1.lib,这个通过点击右下角的那个【加入库或者对象】选择lua5.1.lib即可实现。
  5. 因为程序运行时需要lua5.1.lib文件,你就需要把Lua的库目录加入系统的path中,当然你也可以把这个文件拷贝到你的工程文件所在目录中(Lua的便携性得到体现了吧)。

此后,你就可以在此工程中使用Lua啦。

下面代码均源自Lua入门 - 城市胡同 http://www.wujianrong.com/archives/2007/10/lua.html

下面是cpp程序文件

  1. //LuaTestMail.cpp
  2. #include <cstdlib>
  3. #include <iostream>
  4. extern "C" {
  5.     #include <lua.h>
  6.     #include <lualib.h>
  7.     #include <lauxlib.h>
  8. }
  9. using namespace std;
  10. int main ( int argc, char *argv[] )
  11. {
  12.     /* Lua解释器指针 */
  13.     lua_State* L;
  14.     /* 初始化Lua */
  15.     L = lua_open();
  16.     /* 载入Lua基本库 */
  17.     luaL_openlibs(L);
  18.     /* 运行脚本 */
  19.     luaL_dofile(L, "test.lua");
  20.     /* 清除Lua */
  21.     lua_close(L);
  22.     /* 暂停 */
  23.     system("PAUSE");
  24.     return EXIT_SUCCESS;
  25. }
[摘自城市胡同http://www.wujianrong.com/archives/2007/10/lua.html]

这个程序简短且直接,下面做一点说明:

  1. lua_open()返回一个指向Lua解释器的一个指针。
  2. luaL_openlibs()用于装载Lua库,它提供了一些简单的函数,如:print。
  3. 通过调用luaL_dofile()执行脚本。它的作用是读取并解释脚本。
  4. 最后,通过lua_close()函数关闭Lua。

新建立一个名字是test.lua的文件,内容

  1. -- simple test
  2. print ("Hello World"
好了,你可以编译你的工程,运行了。
原创粉丝点击