Lua基础语法

作者: NickYang 分类: 程序开发 发布时间: 2011-01-05 00:26

注释
像我们这样的码农,接触新语言第一个想的肯定是如何打注释,代码写不出来,伪代码总能写的出来一些。Lua中的注释使用两个短线来表示本行以后是注释内容,使用–[[ –]]来注释多行内容,例如

print (1); --打印1,单行注释

print (1); --[[这里是多行注释,

本行也被我注释掉了,到对应的符号结束。--]]

老生常谈的Hello world !

print("Hello world !"); --本例也可以没有最后的“;”,因为写C/C++习惯了,所以不自主的

–会加上分号,该分号可以没有的。

把这句代码写在一个 .lua 文件里,然后进入控制台,在控制台运行Lua.exe文件,

输入指令 lua hello.lua

即可看到该文件的输出。

题外话:Lua有一个编辑软件叫LuaForWindows,安装之后会自动加入系统变量,创建Lua.exe和Luac.exe,有一个控制台和编辑器,算是比较好用了,编辑器里面可以调试,挺强大的,如果大家觉得手动写Lua脚本容易出错,建议使用该软件。】

Chunks

Chunk是Lua中一系列语句的称呼,也可能是Lua中的每一块语句,可以是一个语句,或者很多语句、函数等。例如:在Lua.exe下执行的每一条语句都是一个Chunk。

每个语句结尾的分号(;)是可选的,但如果同一行有多个语句最好用;分开。

在交互模式(控制台)下,lua通常会把一行作为一个Chunk,但是Lua的一行不是一个完整的Chunk,它会等待你输入完整再执行,等待未完的后续行时,给出不同的提示符,一般是>>

假设我们有一个脚本

function norm (x, y)

local n2 = x^2 + y^2

return math.sqrt(n2)

end

function twice (x)

return 2*x

end

在交互模式下:

> dofile("lib1.lua")

> n = norm(3.4, 1.0)

> print(twice(n))

dofile在调试或者测试Lua代码时是很方便的。(关于Linux下的Lua,不懂,所以不讲!)

全局变量

全局变量就是不属于任何一个函数的变量,就像在C/C++中,我们写的全局变量一样,不同的是,Lua中的全局变量不初始化会默认为Nil(Lua中对空的表示),而C/C++中会给随机值,所以记住要初始化。

例如:

a = 10;

print(a);

删除全局变量很简单,将其值设为Nil就行了

a = 10

print(a)

a = nil

print(a) –a = nil

关键字/词法约定

标示符:字母(letter)或者下划线开头的字母、下划线、数字序列.最好不要使用下划线加大写字母的标示符,因为Lua的保留字也是这样的。Lua中,letter的含义是依赖于本地环境的。

保留字:以下字符为Lua的保留字,不能当作标识符。

and break do else elseif end false for function if

in local nil not or repeat return then true until while

注意:Lua是大小写敏感的.

剩下的内容由于最近时间的问题,暂时先搁置,提供一本电子书给大家看,Lua的经典教程

DOWNLOAD:《Programming in lua》

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!

发表评论

电子邮件地址不会被公开。 必填项已用*标注