LUA参考手册

合集下载

罗技G系列外设宏命令编程参考文档

罗技G系列外设宏命令编程参考文档

罗技G系列外设宏命令编程参考⽂档G-series Lua API 参考⽂档V8.50预览与概述⼿册⽬录⼿册⽬录 (2)内容预览 (3)参考⽂档 (4)标准 Lua 5.1 库 (40)附录A (41)G-series Lua API 参考⼿册是⼀套使⽤Lua脚本编程语⾔描述并且为 G-series 系列游戏键盘提供⾼级脚本功能。

该⽂档是在假设您已初步掌握Lua脚本编程语⾔使⽤⽅法的前提下进⾏的。

如果您想了解更多信息请访问 /doc/36b3d64cf4335a8102d276a20029bd64783e6296.html 。

每项G 系列的配置⽂件都有⼀个默认的Lua脚本与其绑定,并且您可以根据您的喜好随意编辑或者⾃定义。

该脚本借助并使⽤⼀个名为OnEvent的事件句柄。

⽤户可以通过检查此句柄中触发的各种事件以执⾏⽤户所希望的动作。

⽅法列表OnEvent (5)GetMKeyState (7)SetMKeyState (8)Sleep (9)OutputLogMessage (10)GetRunningTime (11)GetDate (12)ClearLog (13)PressKey (14)ReleaseKey (15)PressAndReleaseKey (16)IsModifierPressed (17)PressMouseButton (18)ReleaseMouseButton (19)PressAndReleaseMouseButton (20)IsMouseButtonPressed (21)MoveMouseTo (22)MoveMouseWheel (23)MoveMouseRelative (24)MoveMouseToVirtual (25)GetMousePosition (26)OutputLCDMessage (27)ClearLCD (28)PlayMacro (29)AbortMacro (30)IsKeyLockOn (31)SetBacklightColor (32)OutputDebugMessage (33)SetMouseDPITable (34)SetMouseDPITableIndex (35)EnablePrimaryMouseButtonEvents (36)G13 Programming (37)OnEventOnEvent() ⽅法为脚本提供了⼀系列事件句柄以⽅便⽤户对触发的事件进⾏操作,您可以使⽤以下代码实现此⽅法。

Lua 5.1 参考手册

Lua 5.1 参考手册

Lua 中有八种基本类型: nil, boolean, number, string, function, userdata, thread, and table. Nil 类型只有一种值 nil ,它的主要用途用于标表识和别的任何值的差异; 通常,当需要描述一个无意义的值时会用到它。 Boolean 类型只有两种值:false 和 true。 nil 和 false 都能导致条件为假;而另外所有的值都被当作真。 Number 表示实数(双精度浮点数)。 (编译一个其它内部数字类型的 Lua 解释器是件很容易的事;比如把内部数字类型改作 单精度浮点数或长整型。参见文件 luaconf.h 。) String 表示一串字符的数组。 Lua 是 8-bit clean 的: 字符串可以包含任何 8 位字符, 包括零结束符 ('\0') (参见 §2.1)。
Lua 是一个大小写敏感的语言: and 是一个保留字,但是 And 和 AND 则是两个不同的合法的名字。 一般约定,以下划线开头连接一串大写字母的名字(比如 _VERSION)被保留用于 Lua 内部全局变量。
下面这些是其它的 token :
+ - * / % ^ #
== ~= <= >= < > =
( ) { } [ ]
; : , . .. ...
字符串既可以用一对单引号引起,也可以是双引号,里面还可以包含类似 C 的转义符: '\a' (响铃), '\b' (退格), '\f' (表单), '\n' (换行), '\r' (回车), '\t' (横向制表), '\v' (纵向制表), '\\' (反斜杠), '\"' (双引号), 以及 '\'' (单引号)。 而且,如果在一个反斜杠后跟了一个真正的换行符,其结果就是在字符串中产生一个换行符。 我们还可以用反斜杠加数字的形式 \ddd 来描述一个字符。这里, ddd 是一串最多三位的十进制数字。(注意,如果需要在这种描述方法后接一个是数字的字符, 那么反斜杠后必须写满三个数字。)Lua 中的字符串可以包含任何 8 位的值。包括用 '\0' 表示的零。

LUA参考手册

LUA参考手册

Lua参考手册Wikipedia,自由的百科全书Lua 5.0 参考手册作者:Roberto Ierusalimschy, Luiz Henrique de Figueiredo, Waldemar Celes Copyright © 2003 Tecgraf, PUC-Rio. All rights reserved.主要译者、维护人员:曹力丁舜佳[NirvanaStudio ()] 目录[隐藏]1 1 - 绪论2 2 - 语言2.1 2.1 - 词法约定2.2 2.2 - 值和类型2.2.1 2.2.1 - 类型转换2.3 2.3 - 变量2.4 2.4 - 语句2.4.1 2.4.1 - 语句段2.4.2 2.4.2 - 语句块2.4.3 2.4.3 - 赋值2.4.4 2.4.4 - 控制结构2.4.5 2.4.5 - For 语句2.4.6 2.4.6 - 语句式函数调用页脚内容12.4.7 2.4.7 - 局部变量声明2.5 2.5 - 表达式2.5.1 2.5.1 - 算术运算符2.5.2 2.5.2 - 关系运算符2.5.3 2.5.3 - 逻辑运算符2.5.4 2.5.4 - 串联接2.5.5 2.5.5 - 优先级2.5.6 2.5.6 - 表构造器2.5.7 2.5.7 - 函数调用2.5.8 2.5.8 - 函数定义2.6 2.6 - 可见性规则2.7 2.7 - 错误处理2.8 2.8 - 元表2.9 2.9 - 垃圾收集2.9.1 2.9.1 - 垃圾收集元方法2.9.2 2.9.2 - 弱表2.10 2.10 - 同步程序3 3 - 应用程序接口3.1 3.2 - 堆栈和索引3.2 3.3 - 堆栈操作页脚内容23.3 3.4 - 堆栈查询3.4 3.5 - 堆栈取值3.5 3.6 - 将值压入堆栈3.6 3.7 - 控制垃圾收集3.7 3.8 - 用户数据类型3.8 3.9 - 元表3.9 3.10 - 加载Lua语句段3.10 3.11 - 表操作3.11 3.13 - 将表作为数组使用3.12 3.14 - 调用函数3.13 3.15 - 受保护调用3.14 3.16 - 定义C 函数3.15 3.17 - 定义C 函数闭包3.16 3.18 - 注册表3.17 3.19 - C 中的错误处理3.18 3.20 - 线程4 4 - 调试接口4.1 4.1 - 堆栈及函数信息4.2 4.2 - 操作局部变量和上值4.3 4.3 - 钩子页脚内容35 5 - 标准库5.1 5.1 - 基本函数5.2 5.2 - Coroutine Mani***tion5.3 5.3 - String Mani***tion5.3.1 string.byte (s [, i])5.3.2 string.char (i1, i2, ...)5.3.3 string.dump (function)5.3.4 string.find (s, pattern [, init [, plain]])5.3.5 string.len (s)5.3.6 string.lower (s)5.3.7 string.rep (s, n)5.3.8 string.sub (s, i [, j])5.3.9 string.upper (s)5.4 5.4 - Table Mani***tion5.5 5.5 - Mathematical Functions5.6 5.6 - Input and Output Facilities5.7 5.7 - Operating System Facilities5.8 5.8 - The Reflexive Debug Interface6 6 - Lua 独立程序7 致谢页脚内容48 与以前版本的不兼容性8.1 语言上的变动8.2 库的变更8.3 API 上的改动9 Lua 完整语法参考1 - 绪论Lua是一种为支持有数据描述机制的一般过程式编程语言而设计的扩展编程语言。

Lua极简入门指南(一):基础知识篇

Lua极简入门指南(一):基础知识篇

Lua极简⼊门指南(⼀):基础知识篇本⽂是《Programming in Lua 3rd》读书笔记。

Chunks⼀个 Chunk 就是⼀组被执⾏的语句,例如⼀个⽂件或者交互模式下的⼀⾏。

标识符(identifiers)我们应该避免使⽤以 _ 开头并跟上⼀个或者多个⼤写字母的字符串来作标识符,它们被保留作特殊的⽤途(例如:_VERSION)。

注释单⾏注释使⽤复制代码代码如下:--多⾏注释使⽤复制代码代码如下:--[[ 和 --]]类型简介Lua 存在的数据类型包括:1.nil。

此类型只有⼀个值 nil。

⽤于表⽰“空”值。

全局变量默认为 nil,删除⼀个已经赋值的全局变量只需要将其赋值为 nil(对⽐ JavaScript,赋值 null 并不能完全删除对象的属性,属性还存在,值为 null)2.boolean。

此类型有两个值 true 和 false。

在 Lua 中,false 和 nil 都表⽰条件假,其他值都表⽰条件真(区别于 C/C++ 等语⾔的是,0 是真)3.number。

双精浮点数(IEEE 754 标准),Lua 没有整数类型4.string。

你可以保存任意的⼆进制数据到字符串中(包括 0)。

字符串中的字符是不可以改变的(需要改变时,你只能创建⼀个新的字符串)。

获取字符串的长度,可以使⽤ # 操作符(长度操作符)。

例如:print(#”hello”)。

字符串可以使⽤单引号,也可以使⽤双引号包裹,对于多⾏的字符串还可以使⽤ [[ 和 ]] 包裹。

字符串中可以使⽤转义字符,例如 \n \r 等。

使⽤ [[ 和 ]]包裹的字符串中的转义字符不会被转义erdata。

⽤于保存任意的 C 数据。

userdata 只能⽀持赋值操作和⽐较测试6.function。

函数是第⼀类值(first-class value),我们能够像使⽤其他变量⼀样的使⽤函数(函数能够保存在变量中,可以作为参数传递给函数)7.thread。

快速入门使用Lua进行游戏脚本编程与开发

快速入门使用Lua进行游戏脚本编程与开发

快速入门使用Lua进行游戏脚本编程与开发第一章:Lua语言简介Lua是一种轻量级的脚本语言,常用于游戏开发中的脚本编程。

它具有简洁、高效、易学易用的特点,成为了许多大型游戏引擎的首选脚本语言。

在本章中,我们将介绍Lua语言的基本概念和特点。

Lua最初由巴西里约热内卢天主教大学开发,并于1993年发布。

它是一种嵌入式语言,可以轻松集成到其他应用程序中。

Lua语言具有类似于C语言的语法,采用动态类型和自动内存管理的方式,允许开发者快速建立原型,高效地编写脚本代码。

与其他脚本语言相比,Lua的解释器非常小巧,通常只有几十KB大小,因此非常适合在资源受限的环境中使用。

同时,Lua还具备良好的跨平台性,支持各种操作系统和硬件平台。

第二章:Lua的基本语法在本章中,我们将介绍Lua语言的基本语法,包括变量、函数、控制流等。

1. 变量:Lua采用动态类型,无需显式声明变量类型。

你只需要直接给变量赋值,Lua会根据赋值的数据类型自动确定变量类型。

2. 函数:在Lua中,函数是一等公民。

你可以像操作变量一样操作函数,将其赋给变量、作为参数传递、作为返回值等。

3. 控制流:Lua支持常见的控制流语句,如条件语句(if-else)、循环语句(for、while)、跳转语句(break、return)等。

这些语句可以帮助开发者实现不同的逻辑和算法。

第三章:Lua与游戏开发在游戏开发中,Lua常常被用于编写游戏脚本和实现游戏逻辑。

在本章中,我们将介绍Lua在游戏开发中的应用场景和实践经验。

1. 游戏脚本编写:Lua可以作为一种独立的脚本语言,用于编写游戏逻辑、人工智能、关卡设计等,让游戏本身具备更高的灵活性和可扩展性。

2. 引擎扩展:许多游戏引擎都内置了Lua的解释器,开发者可以通过编写Lua脚本来扩展引擎的功能。

例如,可以使用Lua脚本编写自定义的游戏菜单、界面、特效等。

3. 快速迭代:由于Lua的语法简洁、易于学习,以及动态类型和自动内存管理的特性,使用Lua编写游戏脚本可以帮助开发者更快地进行迭代开发,快速测试和修复bug。

学会使用Lua进行游戏脚本编写

学会使用Lua进行游戏脚本编写

学会使用Lua进行游戏脚本编写Lua是一种轻量级的脚本语言,它被广泛用于游戏开发中。

学会使用Lua进行游戏脚本编写可以帮助开发者更加高效地创建游戏。

本文将详细介绍Lua的基本语法和常用功能,并分点列出以下内容:一、Lua的基础语法1. 变量与数据类型:Lua是一种动态类型语言,变量可以存储不同类型的数据,如数字、字符串等。

2. 注释:通过使用"--"来添加单行注释,或使用"[[]]"来添加多行注释。

3. 控制语句:包括条件判断语句(if-elseif-else)以及循环语句(for、while、repeat-until)。

4. 函数:Lua中的函数使用关键字"function"定义,可以有多个参数和返回值。

二、Lua的常用功能1. 字符串操作:Lua提供了丰富的字符串处理函数,如连接字符串、截取子串、查找子串等。

2. 数学运算:可以进行加、减、乘、除等基本的数学运算,还可以通过导入数学库来进行高级数学计算。

3. 表操作:表是一种非常重要的数据结构,在Lua中使用键值对保存数据,可以进行增删改查等操作。

4. 文件操作:可以通过Lua的文件操作函数来读取和写入文件,对于游戏中的存档和配置文件非常有用。

5. 异常处理:Lua提供了try-catch语句来处理异常情况,可以在代码执行出错时进行相应的处理。

6. 模块化:Lua支持模块化开发,可以将代码按照功能模块划分,并通过require函数进行导入和调用。

三、Lua在游戏开发中的应用1. 游戏逻辑控制:Lua可以用于编写游戏的逻辑控制部分,包括玩家操作响应、游戏进程控制等。

2. AI编写:通过使用Lua脚本编写游戏中的人工智能算法,可以让NPC、敌人等游戏角色更具智能。

3. 游戏界面设计:Lua可以与图形界面库相结合,进行游戏界面的设计和渲染,使其更加美观和交互性。

4. 游戏工具开发:Lua具有简单易学的特点,非常适合用于开发游戏中的工具,如地图编辑器、关卡设计等。

lua语言中表的格式-概述说明以及解释

lua语言中表的格式-概述说明以及解释

lua语言中表的格式-范文模板及概述示例1:在Lua语言中,表是一种非常重要的数据结构,被广泛用于存储和操作数据。

表是一个关联数组,可以使用任意类型的值作为索引。

Lua中的表是一种无序的集合,可以包含任意类型的值作为键和值。

表的创建可以通过花括号{}来实现,例如:local myTable = {}上述代码创建了一个名为myTable的表。

这个表是一个空表,还没有包含任何键值对。

在Lua中,表的键和值之间使用等号=进行关联。

键和值可以是任意的Lua数据类型,例如:local myTable = {name = "John",age = 25,isStudent = true}上述代码创建了一个名为myTable的表,包含了三个键值对。

其中,name是键,"John"是值;age是键,25是值;isStudent是键,true是值。

表中的键和值可以通过索引来访问。

可以使用点号.或者方括号[]来访问表中的键值对,例如:print() 输出: Johnprint(myTable["age"]) 输出: 25在Lua中,表是一种动态的数据结构,可以根据需要随时修改和扩展。

可以通过赋值操作来修改表中的键值对,例如: = "Mike" 修改键name的值为"Mike"myTable.isStudent = false 修改键isStudent的值为false表还可以包含另一个表作为值,形成嵌套的表结构。

例如:local myTable = {name = "John",contact = {phone = "1234567890",email = "john@example"}}上述代码创建了一个名为myTable的表,其中contact是一个嵌套的表。

Lua脚本语法说明(修订)

Lua脚本语法说明(修订)

Lua脚本语法说明(修订)Lua脚本语法说明(增加lua5.1部份特性) Lua 的语法⽐较简单,学习起来也⽐较省⼒,但功能却并不弱。

所以,我只简单的归纳⼀下Lua的⼀些语法规则,使⽤起来⽅便好查就可以了。

估计看完了,就懂得怎么写Lua程序了。

在Lua中,⼀切都是变量,除了关键字。

I. ⾸先是注释 写⼀个程序,总是少不了注释的。

在Lua中,你可以使⽤单⾏注释和多⾏注释。

单⾏注释中,连续两个减号"--"表⽰注释的开始,⼀直延续到⾏末为⽌。

相当于C++语⾔中的"//"。

多⾏注释中,由"--[["表⽰注释开始,并且⼀直延续到"]]"为⽌。

这种注释相当于C语⾔中的"/*...*/"。

在注释当中,"[["和"]]"是可以嵌套的(在lua5.1中,中括号中间是可以加若⼲个"="号的,如 [==[ ... ]==]),见下⾯的字符串表⽰说明。

II. Lua编程 经典的"Hello world"的程序总是被⽤来开始介绍⼀种语⾔。

在Lua中,写⼀个这样的程序很简单: print("Hello world") 在Lua中,语句之间可以⽤分号";"隔开,也可以⽤空⽩隔开。

⼀般来说,如果多个语句写在同⼀⾏的话,建议总是⽤分号隔开。

Lua 有好⼏种程序控制语句,如:控制语句格式⽰例If if 条件 then ... elseif 条件 then ... else ... end if 1+1=2 then print("true") elseif 1+2~=3 then print("true") else print("false") endWhile while 条件 do ... end while 1+1~=2 do print("true") endRepeat repeat ... until 条件repeat print("Hello") until1+1~=2For for 变量=初值, 终点值, 步进 do ... end for i = 1, 10, 2 do print(i) endFor for 变量1, 变量2, ... 变量n in 表或枚举函数 do ... end for a,b in mylist do print(a, b) end 注意⼀下,for的循环变量总是只作⽤于for的局部变量;当省略步进值时,for循环会使⽤1作为步进值。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Lua参考手册Wikipedia,自由的百科全书Lua 5.0 参考手册作者: Roberto Ierusalimschy, Luiz Henrique de Figueiredo, Waldemar Celes Copyright © 2003 Tecgraf, PUC-Rio. All rights reserved.主要译者、维护人员:曹力丁舜佳 [NirvanaStudio ()] 目录 [隐藏]1 1 - 绪论2 2 - 语言2.1 2.1 - 词法约定2.2 2.2 - 值和类型2.2.1 2.2.1 - 类型转换2.3 2.3 - 变量2.4 2.4 - 语句2.4.1 2.4.1 - 语句段2.4.2 2.4.2 - 语句块2.4.3 2.4.3 - 赋值2.4.4 2.4.4 - 控制结构2.4.5 2.4.5 - For 语句2.4.6 2.4.6 - 语句式函数调用2.4.7 2.4.7 - 局部变量声明2.5 2.5 - 表达式2.5.1 2.5.1 - 算术运算符2.5.2 2.5.2 - 关系运算符2.5.3 2.5.3 - 逻辑运算符2.5.4 2.5.4 - 串联接2.5.5 2.5.5 - 优先级2.5.6 2.5.6 - 表构造器2.5.7 2.5.7 - 函数调用2.5.8 2.5.8 - 函数定义2.6 2.6 - 可见性规则2.7 2.7 - 错误处理2.8 2.8 - 元表2.9 2.9 - 垃圾收集2.9.1 2.9.1 - 垃圾收集元方法2.9.2 2.9.2 - 弱表2.10 2.10 - 同步程序3 3 - 应用程序接口3.1 3.2 - 堆栈和索引3.2 3.3 - 堆栈操作3.3 3.4 - 堆栈查询3.4 3.5 - 堆栈取值3.5 3.6 - 将值压入堆栈3.6 3.7 - 控制垃圾收集3.7 3.8 - 用户数据类型3.8 3.9 - 元表3.9 3.10 - 加载Lua语句段3.10 3.11 - 表操作3.11 3.13 - 将表作为数组使用3.12 3.14 - 调用函数3.13 3.15 - 受保护调用3.14 3.16 - 定义C 函数3.15 3.17 - 定义C 函数闭包3.16 3.18 - 注册表3.17 3.19 - C 中的错误处理3.18 3.20 - 线程4 4 - 调试接口4.1 4.1 - 堆栈及函数信息4.2 4.2 - 操作局部变量和上值4.3 4.3 - 钩子5 5 - 标准库5.1 5.1 - 基本函数5.2 5.2 - Coroutine Mani***tion5.3 5.3 - String Mani***tion5.3.1 string.byte (s [, i])5.3.2 string.char (i1, i2, ...)5.3.3 string.dump (function)5.3.4 string.find (s, pattern [, init [, plain]]) 5.3.5 string.len (s)5.3.6 string.lower (s)5.3.7 string.rep (s, n)5.3.8 string.sub (s, i [, j])5.3.9 string.upper (s)5.4 5.4 - Table Mani***tion5.5 5.5 - Mathematical Functions5.6 5.6 - Input and Output Facilities5.7 5.7 - Operating System Facilities5.8 5.8 - The Reflexive Debug Interface6 6 - Lua 独立程序7 致谢8 与以前版本的不兼容性8.1 语言上的变动8.2 库的变更8.3 API 上的改动9 Lua 完整语法参考1 - 绪论Lua是一种为支持有数据描述机制的一般过程式编程语言而设计的扩展编程语言。

它同样可以对面向对象语言、函数式程序设计(Functional Programming,如Lisp)以及数据驱动编程(data-driven programming)提供很好的支持。

它的目标是被用作一种强大的、轻型的配置语言。

Lua目前已经被实现为一个扩展库,是用clean C (ANSI C/C++的一个通用子集)编写的。

作为一个扩展语言,Lua没有"Main"函数的概念:它仅仅是嵌入一个宿主程序进行工作,可以称之为嵌入式编程或者简单的说是宿主编程。

这个宿主程序可以调用函数来执行Lua的代码片断,可以设置和读取Lua的变量,可以注册C函数让Lua代码调用。

Lua的能力可以扩展到更大范围,在不同的领域内,这样就在同样的语法框架下创建了你自定义的编程语言。

Lua的发行版包括一个独立的嵌入式程序,lua,他使用Lua的扩展库来提供一个完全的Lu a解释器。

Lua是自由软件,通常不提供任何担保,如它的版权说明中叙述的那样。

手册中描述的实现在Lua的官方网站可以找到,。

如果需要知道Lua设计背后的一些决定和讨论,可以参考以下论文,它们都可以在Lua的网站上找到。

R. Ierusalimschy, L. H. de Figueiredo, and W. Celes. Lua---an extensible extension language. Software: Practice & Experience26 #6 (1996) 635-652.L. H. de Figueiredo, R. Ierusalimschy, and W. Celes. The design and implementation of a language for extending applications.Proceedings of XXI Brazilian Seminar on Software and Hardware (1994) 273-283.L. H. de Figueiredo, R. Ierusalimschy, and W. Celes. Lua: an extensible embedded language. Dr. Dobb's Journal 21 #12 (Dec 1996) 26-33.R. Ierusalimschy, L. H. de Figueiredo, and W. Celes. The evolution of an extension language: a history of Lua, Proceedings of V Brazilian Symposium on Programming Languages (2001) B-14-B-28.Lua在葡萄牙语中的意思是“月亮”,发音是 LOO-ah。

2 - 语言这一章将描述Lua的词法、语法和语义结构。

换句话说,这一章会讲什么标记是合法的,他们是如何组合的,以及他们的组合是什么含义。

语言结构会使用常用的扩展BNF范式来解释,如{a} 表示0或多个a,表示a是可选的(0个或1个)。

非终端字体(不能显示的)用斜体表示,关键字是粗体,其他终端符号用typ ewriter(等宽)字体,并用单引号引出。

2.1 - 词法约定Lua中的标识符(Identifiers)可以是任意的数字、字符和下划线“_”,但不能以数字开头。

这条规则符合大多数编程语言中的标识符的定义。

(字符的具体定义要根据系统的地区设置:任何区域设置可以认同的字母表中的字母都可以用在标识符中。

)下面的关键字(keywords)为保留关键字不可以作为标识符出现:and break do else elseifend false for function ifin local nil not orrepeat return then true until whileLua对大小写敏感:and是一个保留字,但是 And 和 AND 是两个不一样的、但都合法的标识符。

习惯上来说,以下划线开始且后面跟着大写字母的标识符 (例如 _VERSION) 是为Lua内部变量所保留的。

下面的字符(串)是其他的一些标记:+ - * / ^ =~= <= >= < > ==( ) { } [ ]; : , . .. ...字符串(Literal strings)以单引号或者双引号定界,同时可以包含以下C语言风格的转义字符:\a --- 铃声(bell)\b --- 回退(backspace)\f --- form feed\n --- 新行(newline)\r --- 回车(carriage return)\t --- 水平制表符(horizontal tab)\v --- 垂直制表符(vertical tab)\\ --- 反斜杠(backslash)\" --- 双引号(quotation mark)\' --- 单引号(apostrophe)\[ --- 左方括号(left square bracket)\] --- 右方括号(right square bracket)另外,一个 `\newline´(一个反斜杠加上一个真正的换行符)会导致字符串内的分行。

字符串中的字符也可以使用转义字符`\ddd´通过数字值来指定。

ddd 是最多为3个十进制数字的序列。

Lua中的字符串也可以包含8进制数字,包括嵌入零,它可以表示为 `\0´。

字符串也可以用双方括号来定界[[ ··· ]]。

这种括号方式的语法,字符串可以跨越多行,也可以包含嵌套的,同时不会转义任何序列。

方便起见,当开始的 `[[´后面紧跟着一个换行符的话,这个换行符不会包括在字符串内。

举个例子:在一个使用ASCII编码(其中`a´的编码是 97,换行符是 10,字符`1´是 49)的系统中,以下四种格式得到的都是同一个字符串:1."alo\n123\""2.'\97lo\10\04923"'3.[[alo4.123"]]4.[[5.alo6.123"]]数值常量(Numerical constants)可以有一个可选的底数部分和一个可选的指数部分。

以下是有效的数值常量:3 3.0 3.1416 314.16e-2 0.31416E1注释(Comments)可以在任何地方出现,必须在最前面加上双减号 (--)。

相关文档
最新文档