Lua语法,lua语句,Lua基本语法

Lua语法,lua语句,Lua基本语法

Lua非常简单易学。这篇文章会告诉你一点Lua的语法,不会很长。下面通过以下几点介绍Lua语言的基本语法。

1 简介

由clean C实现,需要宿主程序调用,可以注入到C函数中。

2 语法约定

Lua的语法是基于BNF的语法规则。

Lua区分大小写。

2.1 保留关键字

C语言中没有的关键字是:

复制代码如下:

和elseif函数

在零本地not或

重复然后直到

规范:全局变量以下划线开头。

2.2 操作符

在C语言中找不到运算符:

^

~=

//-向下舍入

操作员不在Lua中:

=

-=

2.3 字符串定义

使用转义字符:使用转义字符来表示那些不明确的字符。

字符表示

代表字符a。

97-代表字符a。

\ 049-代表数字字符1。

其他转义字符表示

\ \\n -代表一个字符串\n

\ n-用于换行

请注意,数字字符必须是三位数。其他字符不能超过三个字符。

采用长括号:长括号中的所有内容都被视为普通字符。

[[]]-0级大括号

[==[]=]-二级大括号

3 值与类型

Lua是一种动态语言。变量没有类型,只有值。该值本身携带类型信息。

Lua有八种基本数据类型:nil,boolean,number,string,function,user data,thread,table。

只有零和假导致条件为假,其他为真。

Userdata变量用于存储c数据。Lua只能使用这类数据,不能创建或修改,以保证宿主程序能完全掌握数据。

线程用于实现协程。

表用于实现关联数组。Table允许对任何类型的数据进行索引,还允许将任何类型用作表字段中的值(如上所述

任何类型都不包含nil)。是tablelua中唯一的数据结构。

因为函数也是一个值,所以它可以存储在表中。

function、userdata、thread、table table的值都是对象。这些类型的变量只保存变量的引用,在赋值、参数传递、函数返回等操作过程中不会被任何性质的复制。

库函数type()返回变量的类型描述信息。

3.1 强制转换

Lua提供了数字和字符串之间的自动转换。

您可以使用format函数来控制数字到字符串的转换。

4 变量

有三种类型的变量:全局变量、局部变量和表中的字段。

默认情况下,函数外部的变量是全局变量,除非声明显示为局部变量。默认情况下,函数的内部变量和参数是局部变量。

局部变量的范围是从声明位置到语句块的末尾(或者直到下一个同名局部变量的声明)。

变量的默认值为零。

复制代码如下:

A=5 -全局变量

b=5-局部变量

函数笑话()

C=5 -局部变量

局部=6-局部变量

结束

打印(c,d) -零零

局部a=6 -局部变量

B=6 -全局变量

打印(a,b);- 6 6

结束

打印(a,b) - 5 6

方便,-表示前面表达式的结果。

4.1 索引

使用方括号[]作为表的索引。Lua使用语法糖来提供。操作。

t[i]

T.i -索引为字符串类型时的简化书写方法。

Gettable _ event (t,I)-索引访问本质上就是这样的函数调用。

4.2 环境表

所有的全局变量都放在一个环境表中,这个表的变量名是_env。对全局变量A的访问是_env.a (_env_ is只是为了方便解释)。

每个函数都将对环境表的引用作为一个变量,该环境表包含该函数可以调用的所有变量。

子函数从父函数继承环境表。

可以通过getfenv/setfenv函数读写环境表。

以上是本文的全部内容。我希望你能喜欢它。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: