Lua 基础教程(三)基本语法

98 阅读2分钟

Lua 基础教程(三)基本语法

hudson 译 原文

第一个Lua程序

交互模式编程

Lua提供了一种交互模式。在这种模式下,你可以依次输入指令并立即获得结果。这可以通过在shell中使用lua -i或仅使用lua命令来调用。输入该命令后,按Enter键,交互模式就会启动,如下所示。

$ lua -i 
$ Lua 5.1.4  Copyright (C) 1994-2008 Lua.org, PUC-Rio
quit to end; cd, dir and edit also available

可以使用以下语句打印一些内容 :

print("test")

按下回车键,将得到以下输出:

test

默认模式编程

默认模式是:通过解释器执行 Lua文件,并持续执行直到脚本完成。当脚本完成时,解释器不再处于活动状态。

现在编写一个简单的Lua程序,创建test.lua文件,键入以下源代码 :

print("test")

假设lua环境设置正确,使用以下代码运行程序 −

$ lua test.lua

输出如下:

test

还有一种方式可以执行Lua程序的方式。 以下是修改后的test.lua文件 :

#!/usr/local/bin/lua

print("test")

在这里,假设/usr/local/bin目录中有Lua解释器可用。如果第一行以#符号开头,则解释器会忽略第一行。按如下方式运行该程序 :

$ chmod a+rx test.lua
$./test.lua

将得到以下输出:

test

现在让我们认识一下Lua程序的基本结构,就可以轻松理解Lua编程语言的基本构建模块。

Lua中的Token

Lua程序由各种Token组成,Token可以是关键字、标识符、常量、字符串文字或符号。例如,以下Lua语句由三个Token组成 :

io.write("Hello world, from ",_VERSION,"!\n")

各个Token是:

io.write
(
   "Hello world, from ",_VERSION,"!\n"
)

代码注释

注释就像Lua程序中的帮助文本一样,它们会被解释器忽略。注释以--[[开始,以字符--]]结束,如下所示 :

--[[ my first program in Lua --]]

标识符

Lua标识符是用于标识变量、函数或任何其他用户定义项的名称。标识符以字母“A到Z”或“a到z”或下划线“_”开头,后跟零个或多个字母、下划线和数字(0到9)。

Lua不允许在标识符中使用标点符号,例如@、$和%。Lua是一种区分大小写的编程语言。因此,在Lua中,Manpowermanpower是两个不同的标识符。以下是可接受的标识符的一些示例 :

mohd         zara      abc     move_name    a_123
myname50     _temp     j       a23b9        retVal

关键字

下面的列表显示了Lua中的一些保留字。这些保留字不得用作常量或变量或任何其他标识符名称。

----
andbreakdoelse
elseifendfalsefor
functionifinlocal
nilnotorrepeat
returnthentrueuntil
while

Lua中的空白

只包含空格的行被称为空行,Lua解释器完全忽略它。

空白是Lua中用来描述空白、制表符、换行符和注释的术语。空白将语句的一部分与另一部分分隔开,并使解释器能够识别语句中一个元素(例如int)的结束位置和下一个元素的开始位置。因此,在以下声明中 :

local age

localage之间必须至少有一个空白字符(通常是空格),以便解释器能够区分它们。另一方面,在以下声明中 :

fruit = apples + oranges   --get the total fruit

不需要在fruit=之间,或在=apples之间加空白字符,如果出于可读性目的,也可以自由包含一些空白字符。