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

最近更新

三氯乙醛的土壤污染及其降解研究 2页

2025年幼儿园庆元宵节活动策划方案大全 6页

2025年幼儿园年度教学工作计划最新版 20页

2025年幼儿园师德师风考核制度(7篇) 21页

三、电渗析的进水水质指标和工艺系统的选择 2页

2025年幼儿园小班教育笔记-:如何对待幼儿的打.. 9页

一类球面的扁薄壳体结构的应力分析和计算实例.. 2页

2025年幼儿园家长会工作计划范文3篇 7页

2025年幼儿园安全防范措施方案 35页

一种简便的改进锁相环路牵引能力的方法 2页

一种新的水煤浆制备技术试验成功 2页

一种改进的校准参考标准加速度计的方法 2页

二年级数学上册期中试卷(附参考答案) 7页

二年级数学上册期末标准测试卷及答案 6页

机场跑道工程承揽居间合同3篇 53页

机场扩建土方运输服务合同3篇 55页

木材运输劳务合同样本3篇 53页

服装鞋帽国际海运合同3篇 50页

服装物流配送标准合同模板3篇 50页

服装店装修全包合同模板3篇 48页

月子中心装修合同3篇 51页

智慧旅游用地居间合同样本3篇 57页

时尚街区商场装修合同3篇 54页

旧城改造渣土运输合同3篇 51页

旅游集散中心装修合同模板3篇 53页

旅游地产居间合同样本3篇 51页

五年级语文上册期末考试卷(免费) 8页

2025年大学中国新能源电动汽车消费者调研报告.. 24页

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

煤炭资源地质勘查设计编写提纲 14页