上次已经将Lua的工作环境配置好了,接下来我们要做一些简单的示例:
(本文的部分内容来自Lua.org的官方Wiki,为了更加直观,我使用了贴图,并进行了相关说明。原网址在这里:http://lua-users.org/wiki/TutorialExamples)
Lua的命令行模式
如果我们直接运行Lua的可执行文件(lua.exe)或者在【开始--运行】菜单里输入lua的话,就会出现一个命令提示符 > (一个大于号):
从上面的的信息可以看到当前的Lua版本号,这里我使用的版本为 5.1.2
Wiki上所有的Lua示例都是用以文本的形式给出代码了,为了直观起见,在代码不长的情况下,我会使用贴图。
例如:
这里提示一下,每行lua代码最后的分号是可选的,这里我没有打上分号。
如果一行代码是以 = 开始的话,那面lua会将这行代码当做一个表达式。这种写法可以作为调用print()函数的一个小技巧。
多行输入
在必要的情况下,我们也可以在命令行下输入多行代码。Lua会尝试估计你给出的代码,判断它是否是一个完整的命令。如果发现命令不完整,就会出现一个>>(两个大于号)来让你继续输入剩余的代码。例如:
在上面的例子当中,忘记print函数最后的)也将使Lua检测到命令不完整,它会等待着此条语句的结束(继续出现一个>>)。当然,如果你输入了某些不和语法的命令,将会得到错误信息。下面是使用赋值操作符 = 的示例,同样的,它也支持多行输入:
注释
当你看到任何文本前附带着- -(两个短横线),表明这一行是一个注释。任何这样的文本都会被Lua编译器忽略。
顺便说一下,Lua里面的多行注释是这种格式的:
以下都是注释。。。
注释。。。
还是注释。。。
]]
在 --[[ 和 ]] 之间的都是注释了。
非命令行模式运行Lua
我们使用上次配置好的EditPlus来运行一些Lua脚本。如下:
ctrl + 1 调出运行画面:
几点需要说明:
os.date() 和 os.clock()都是Lua的内置函数,用来返回系统的日期和时间。
os.date() 和 os.clock() 之间的 .. (两个点)是用来连接字符串用的。这里要注意 .. 前面一定要有空格,否则Lua会报错。
这里我们还可以发现 print() 函数默认是在结尾换行的,也就是说多个 print() 在一起不会将内容输出到一行,当然你可以在 print() 里面加 /n 让它再次换行。
这次就介绍到这里,下次继续说一些Lua基本类型方面的东西。