学习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++你将需要进行下列步骤:
- 创建一个新的控制台工程。
- 打开【工程】菜单中的【工程属性】。
- 在【文件/目录】的【包含文件目录】页添加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>
- }
- using namespace std;
- int main ( int argc, 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");
- return EXIT_SUCCESS;
- }
这个程序简短且直接,下面做一点说明:
- lua_open()返回一个指向Lua解释器的一个指针。
- luaL_openlibs()用于装载Lua库,它提供了一些简单的函数,如:print。
- 通过调用luaL_dofile()执行脚本。它的作用是读取并解释脚本。
- 最后,通过lua_close()函数关闭Lua。
新建立一个名字是test.lua的文件,内容
- -- simple test
- print ("Hello World")
- 学习Lua,使用devcpp
- Devcpp使用技巧
- devcpp
- 在DevCPP里使用多线程
- DevCpp的一些使用技巧
- DevCpp中Zlib包的使用
- lua学习:使用Lua处理游戏数据
- lua学习:使用Lua处理游戏数据
- lua学习:使用Lua处理游戏数据
- 【Lua学习笔记】Lua中协程的使用
- 如果你学习C++,请不要选择DevCpp
- SDL库的学习笔记之一—devcpp环境配置
- 准备学习使用lua编程,
- 使用devcpp(mingw)编译产生JNI中的dll
- 开始学习LUA,在LUA中使用UNICODE字符串
- 学习LUA,使用IUP进行GUI程序设计
- 学习LUA,使用IUP进行GUI程序设计
- lua学习笔记---综合使用总结
- 大型互联网网站架构心得之一:分
- Valgrind手册翻译(上)
- Flash实时调试器分享下载 — AGE Live Debugger
- Valgrind手册翻译(下)
- .Net Framework OleDb 数据提供程序要求 Microsoft Data Access Components(MDAC) 2.6 或更高版本。发现当前安装的版本是
- 学习Lua,使用devcpp
- 百度竞价排名纠纷背后:谁绑架了谁?
- 大型互联网网站架构心得之二:并、换和其它
- “交通短信”项目合作方案
- zend framework 日記 2008/11/17
- 隐式转换:比动态类型更强大?
- M2M过程实例:人类解决凸包问题(从另一个角度去理解M2M模型)
- MySQL数据库操作实战
- Python 一些语法规则