Lua
文章平均质量分 81
iduosi
求知路上的乐天派
展开
-
Lua库和工具
相比Java、Python、Perl,Lua的开源工具和库可能并不算多,但其中不乏优秀之作。以下介绍的资源均可在http://lua-users.org/wiki/LuaAddons上找到,而且绝大多数都遵循着与Lua相同的许可协议。一、Kepler Kepler是一个简单且轻量的Web开发平台(但这并不意味着只能用它来开发简单的应用),支持用Lua撰写Web程序,因此相转载 2012-08-20 11:38:22 · 1295 阅读 · 0 评论 -
《Lua程序设计[第二版]》第9,10章笔记
第9章 协同程序(coroutine)协同程序与线程(thread)差不多,也就是一条执行序列,拥有自己独立的栈、局部变量和指令指针,同时又与其他协同程序共享全局变量和其他大部分东西。主要区别:一个具有多个线程的程序可以同时运行多个线程,而协同程序却需要彼此协作地运行。就是说一个具有多个协同程序的程序在任意时刻只能运行一个协同程序,并且正在运行的协同程序只会在其显示的地要求挂起(suspe原创 2012-10-24 02:16:01 · 1208 阅读 · 1 评论 -
《Lua程序设计[第二版]》第11,12章笔记
第11章 数据结构Lua中的table不是一种简单的数据结构,它可以作为其他数据结构的基础。通过table来表示数组、记录、线性表、队列、集合等。 11.1数组使用整数来索引table即可在Lua中实现数组,一般以1作为数组起始索引。a = {}for i=1, 1000 doa[i] = 0endprint(#a)原创 2012-10-26 17:25:07 · 1057 阅读 · 0 评论 -
《Lua程序设计[第二版]》第7,8章笔记
第7章迭代器与泛型for7.1迭代器与closure所谓“迭代器”就是一种可以遍历的(iterate over)一种集合中的所有元素的机制。在Lua中,通常将迭代器表示为函数。每调用一次函数,即返回集合中的下一个元素。一个closure就是一种可以访问其外部嵌套环境中的局部变量的函数。closure的例子:function values(t) locali = 0原创 2012-10-16 23:58:24 · 869 阅读 · 0 评论 -
《Lua程序设计[第二版]》第5,6章笔记
第5章表达式Lua的函数一般将参数放到函数名后的圆括号中。特殊情况:一个函数只有一个参数,并且该参数是一个字符串或table构造式,那么圆括号可有可无,例如:print “Hello World” -- print(“HelloWorld”)dofile ‘a.lua’ -- dofile(‘a.lua’)print [[a m原创 2012-08-23 23:25:34 · 1090 阅读 · 0 评论 -
《Lua程序设计[第二版]》第1,2章笔记
第1章 开始1.1 程序块(chunk)Lua执行的每段代码,例如一个源代码文件或交互模式中输入的一行代码,都称之为一个“程序块”,一个程序块也就是一连串的语句或命令。Lua语句之间不需要分隔符,但也可以使用分号来分隔语句,下面4个程序块都合法,并完全等价:a = 1b = a * 2 a = 1;b = a * 2; a = 1 b = a * 2原创 2012-08-20 23:26:13 · 1363 阅读 · 0 评论 -
《Lua程序设计[第二版]》第3,4章笔记
第3章表达式3.1 算术操作符Lua支持的常规算术操作符有:二元的 +(加)、-(减)、*(乘)、/(除)、^(指数)、%(取模),一元的 -(负号)。其中取模操作符的定义:a % b = a - floor(a/b) * b。3.2 关系操作符Lua提供的关系操作符有: = == ~=这些操作符的运算结果都是 true 或 false 。对于table原创 2012-08-22 02:46:47 · 1483 阅读 · 0 评论 -
编译lua的库和解释器
如何一次性编译lua的库和解释器呢?下面我来说说我的编译步骤:(1)在命令行下使用编译器我是默认将VS 2008装在C盘的,下面添加相关路径时,请注意你的路径是否和我的一致。首先添加环境变量:打开“我的电脑”——“属性”——“高级”——“环境变量”在“用户变量”中新建2个变量,一个名为include,其值为:C:\Program Files\MicrosoftVisual Stud原创 2012-08-20 15:02:57 · 7406 阅读 · 0 评论 -
编写第一个lua程序
今天从www.lua.org上下载了lua 5.1的源码,准备学习一下lua编程。拿到lua 5.1的源码后,先将其编译为静态库lua.lib。(我用VS 2008建立的工程)将生成的lua.lib用于下面这个例子(该例来源于网上,忘记出处了):extern "C"{#include "lua.h"#include "lualib.h" #include "lauxlib.原创 2012-08-20 02:14:05 · 4640 阅读 · 2 评论 -
Lua 源码剖析第1天
Lua 源码剖析第1天 lmathlib.c , lstrlib.c首先看lmathlib.c文件。标准数学库。预处理部分:包含了stdlib.h、math.h、lua.h、luaxlib.h、lualib5个头文件。定义了PI,以及1弧度 = PI/180.0 。 函数部分:实现了一系列常用数学函数。每个函数实现方法一致,首先函数名命名格式遵循math_xxx(x原创 2012-11-06 04:20:44 · 1108 阅读 · 0 评论