1 / 207
文档名称:

Lua 5.3 参考手册.docx

格式:docx   大小:272KB   页数:207页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

Lua 5.3 参考手册.docx

上传人:小枷 2017/12/24 文件大小:272 KB

下载得到文件列表

Lua 5.3 参考手册.docx

相关文档

文档介绍

文档介绍:Lua 参考手册
作者 Roberto Ierusalimschy, Luiz Henrique de Figueiredo, Waldemar Celes
译者 云风
, PUC-Rio 版权所有© 2015 , 在遵循 Lua license 条款下,可自由使用。
目录 · 索引 · 中英术语对照表
1 – 简介
Lua 是一门扩展式程序设计语言,被设计成支持通用过程式编程,并有相关数据描述设施。同时对面向对象编程、函数式编程和数据驱动式编程也提供了良好的支持。它作为一个强大、轻量的嵌入式脚本语言,可供任何需要的程序使用。 Lua 由 clean C(标准 C 和 C++ 间共通的子集)实现成一个库。
作为一门扩展式语言,Lua 没有"main" 程序的概念: 它只能 嵌入 一个宿主程序中工作, 该宿主程序被称为 被嵌入程序 或者简称 宿主
 。宿主程序可以调用函数执行一小段 Lua 代码,可以读写 Lua 变量,可以注册 C 函数让 Lua 代码调用。依靠 C 函数,Lua 可以共享相同的语法框架来定制编程语言,从而适用不同的领域。 Lua 的官方发布版包含一个叫做 lua 的宿主程序示例, 它是一个利用 Lua 库实现的完整独立的 Lua 解释器,可用于交互式应用或批处理。
Lua 是一个自由软件,其使用许可证决定了它的使用过程无需任何担保。本手册所描述的实现可以在 Lua 的官方网站 。
与其它的许多参考手册一样,这份文档有些地方比较枯燥。关于 Lua 背后的设计思想, 可以看看 Lua 网站上提供的技术论文。至于用 Lua 编程的细节介绍, 请参阅 Roberto 的书,Programming in Lua。
2 – 基本概念
本章描述了语言的基本概念。
– 值与类型
Lua 是一门动态类型语言。这意味着变量没有类型;只有值才有类型。语言中不设类型定义。所有的值携带自己的类型。
Lua 中所有的值都是 一等公民。这意味着所有的值均可保存在变量中、当作参数传递给其它函数、以及作为返回值。
Lua 中有八种基本类型: nil、boolean、number、string、function、userdata、 thread 和 table。 Nil 是值 nil 的类型, 其主要特征就是和其它值区别开;通常用来表示一个有意义的值不存在时的状态。 Boolean 是 false 与 true 两个值的类型。 nil 和 false 都会导致条件判断为假; 而其它任何值都表示为真。 Number 代表了整数和实数(浮点数)。 String 表示一个不可变的字节序列。 Lua 对 8 位是友好的: 字符串可以容纳任意 8 位值, 其中包含零('\0') 。 Lua 的字符串与编码无关; 它不关心字符串中具体内容。
number 类型有两种内部表现方式, 整数 和 浮点数。对于何时使用哪种内部形式,Lua 有明确的规则, 但它也按需(参见 §)作自动转换。因此,程序员多数情况下可以选择忽略整数与浮点数之间的差异或者假设完全控制每个数字的内部表现方式。标准 Lua 使用 64 位整数和双精度(64 位)浮点数, 但你也可以把 Lua 编译成使用 32 位整数和单精度(32 位)浮点数。以 32 位表示数字对小型机器以及嵌入式系统特别合适。(参见  文件中的宏 LUA_32BITS 。)
Lua 可以调用(以及操作)用 Lua 或 C (参见 §)编写的函数。这两种函数有统一类型 function。
userdata 类型允许将 C 中的数据保存在 Lua 变量中。用户数据类型的值是一个内存块, 有两种用户数据: 完全用户数据 ,指一块由 Lua 管理的内存对应的对象; 轻量用户数据 ,则指一个简单的 C 指针。用户数据在 Lua 中除了赋值与相等性判断之外没有其他预定义的
操作。通过使用元表 ,程序员可以给完全用户数据定义一系列的操作(参见 §)。你只能通过 C API 而无法在 Lua 代码中创建或者修改用户数据的值, 这保证了数据仅被宿主程序所控制。
thread 类型表示了一个独立的执行序列,被用于实现协程(参见 §)。 Lua 的线程与操作系统的线程毫无关系。 Lua 为所有的系统,包括那些不支持原生线程的系统,提供了协程支持。
table 是一个关联数组, 也就是说,这个数组不仅仅以数字做索引,除了 nil 和 NaN 之外的所有 Lua 值都可以做索引。(Not a Number 是一个特殊的数字,它用于表示未定义或表示不了的运算结果,比如 0/0。) 表可以是 异构 的; 也就是说,表内可以包含任何类型的值(

最近更新

幼儿园防性侵安全教育省公开课一等奖全国示范.. 12页

幼儿园新学期家长会重点解读ppt 35页

关于沿海外向型经济发展战略实施问题的思考 2页

关于晋西离山县王家沟流域培地埂开横沟问题的.. 2页

关于改进师局单位会计核算方法的探讨 2页

2025年肠白塞病诊疗要点与临床实践解析 31页

关于我国铁路建设投资比例问题的探讨 2页

关于我国刮板输送机预张力确定的探讨 2页

2025年细胞衰老与凋亡揭秘管倩楠深度解析 79页

2025年滤板项目合作计划书 50页

《有机磷中毒》 37页

2025年糖尿病自我管理学习指南 21页

2025年玻璃保温容器及其玻璃胆项目发展计划 64页

关于如何保障特种设备稳定作业的探究 2页

关于城镇规划中环境问题的初探 2页

2025年电气故障诊断技巧与策略教学资料汇编 27页

关于农工商联合企业学术讨论情况简介 2页

关于促进我省工业产品产销对接的对策建议 2页

2025年校园核酸检测攻略 95页

2025年春日郊游行与过敏攻略 2页

《药用植物学》 81页

《眼内炎患者的疾病》 28页

2025年慢性呼吸衰竭患者居家护理要点 56页

公路工程项目设计阶段监理工作探讨 2页

全萃法从锌浸出渣中回收铟、锗、镓的研究 2页

全国首届苏联自然科学哲学学术讨论会简介 2页

全国社会商业管理理论讨论会论文目录 2页

2025年基层医疗科研面临的挑战与解决策略解析.. 79页

免疫酶技术在非传染性疾病上的应用 2页

2025年医院财务等级管理攻略 54页