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。) 表可以是 异构 的; 也就是说,表内可以包含任何类型的值(

最近更新

2025年恐怖的万圣节小学生作文500字 2页

二零二五年度个人房屋出租合同(含健身房、车.. 8页

二零二五年度个人房产经纪佣金提成合同 7页

二零二五年度个人心理治疗师雇佣协议 8页

二零二五年度个人店面转租租赁合同 7页

2025年COPD慢性阻塞性肺疾病治疗药物盘点 21页

二零二五年度个人小产权房屋买卖协议书(专业.. 9页

二零二五年度个人对公司借款及还款期限调整协.. 7页

二零二五年度个人对个人房屋租赁合同(含租赁.. 8页

二零二五年度个人存款赠与及管理服务协议 8页

二零二五年度个人委托艺术品交易代收合同 9页

二零二五年度个人大型工程铲车租赁合作协议 9页

二零二五年度个人土地租赁与新能源项目合作协.. 8页

2025年总监理工程师工作总结范文 19页

2025年儿童呼吸健康评估与肺功能检测 27页

2025年急诊科护理实习鉴定 4页

2025年急诊科医生年终总结范文 13页

二零二五年度个人创业项目融资委托合同 8页

二零二五年度个人出租阁楼房租赁合同 7页

2025年思维训练题0道 30页

二零二五年度个人农村土地承包权农业技术合作.. 9页

二零二五年度个人公司股份转让及竞业限制合同.. 8页

2025年儿童健康成长营养分析与改善策略 34页

2025年儿童健康创新计划 20页

2025年怎样饲养黄雀鸟的基本技巧 6页

二零二五年度个人信用贷款中介服务合同 8页

2025年怎样辞职让领导不反感 5页

2025年怎样让简历赢在细节 4页

艺术舞蹈老师简历模板 1页

借款合同模板(电子版) 5页