求知 文章 文库 Lib 视频 Code iProcess 课程 认证 咨询 工具 火云堂 讲座吧   成长之路  
会员   
要资料
 
追随技术信仰

随时听讲座
每天看新闻
 
 

Lua 教程
Lua开发环境
Lua基本语法
Lua变量
Lua数据类型
Lua运算符
Lua循环
Lua决策
Lua函数
Lua字符串
Lua数组
Lua迭代器
Lua表格
Lua模块
Lua元表
Lua协同程序
Lua文件I/O
Lua错误处理
Lua 高级教程
Lua调试
Lua垃圾收集
Lua面向对象
Lua Web编程
Lua数据库/MYSQL操作
Lua游戏编程
Lua标准库
 
 

Lua变量
41 次浏览
9次  
 捐助

变量不过是存储到区域项目可以操作的名称。它可以容纳不同类型的值,包括函数和表格。

变量名可以由字母,数字和下划线。它必须以字母或下划线。大写和小写字母是不同的,因为Lua是区分大小写的。

有八种基本类型值在Lua中:

在Lua,尽管我们没有变量的数据类型,我们基于该变量范围的三种类型。

全局变量:所有的变量默是全局除非显式地声明为局部。

局部变量:当类型被指定为局部的一个变量,它的范围是有限的在自己的范围内使用。

表字段:这是一种特殊类型的变量,可以除了nil,包括功能不放任何东西。

在Lua变量定义:

定义一个变量意味着告诉解释器在哪里和多少创建存储的变量。变量的定义有一个可选的类型和包含该类型,如下一个或多个变量的列表:

type variable_list;

在这里,类型是可选局部或nor型指定使其全局,variable_list可能包含由逗号分隔的一个或多个标识符名称。一些有效的声明是如下所示:

local    i, j
local i
local a,c

同一行 local i, j 均声明并定义了变量i和j;这指示解释器创建一个名为i, j 变量和限制的范围是局部的。

变量可以被初始化(分配一个初始值)声明。初始化包括一个等号后面的常量表达式如下:

type variable_list = value_list;

一些实例是:

local d , f = 5 ,10 --declaration of d and f as local variables. 
d , f = 5, 10; --declaration of d and f as global variables.
d, f = 10 --[[declaration of d and f as global variables.
Here value of f is nil --]]

对于没有初始化的定义:具有静态存储变量隐式初始化为nil。

在Lua声明变量:

正如上面的例子中看到,分配多个变量遵循variable_list和值表格式。在上面的例子中local d , f = 5 ,10,d和f中的值列表variable_list为5和10。

在Lua值设定发生像variable_list在第一个值和第一个变量值表等等。因此d 的值是5和f的值是10。

例子

试试下面的例子,其中变量都在上面被声明已经确定,主函数中初始化:

-- Variable definition:
local a, b
-- Initialization
a = 10
b = 30 print("value of a:", a) print("value of b:", b) -- Swapping of variables
b, a = a, b
print("value of a:", a) print("value of b:", b) f = 70.0/3.0
print("value of f", f)

当上述代码被构建和执行时,它会产生下列结果:

value of a:	10
value of b: 30
value of a: 30
value of b: 10
value of f 23.333333333333

Lua左值和右值:

在Lua有两种表达式:

左值:是指一个内存位置的表达式被称为“左值”的表达式。左值可能会出现无论是左边或右侧。

右值:术语右值指的是存储在内存中某个地址的数据值。右值是不能分配给它的值,这意味着一个右值可能会出现在赋值的右侧而不是左侧的表达式。

变量是左值,因此可能会出现在赋值左侧。数字文本是右值,因此可能无法分配的,不能出现在左侧。下面是一个有效的声明:

g = 20

但是,下面不是一个有效的声明,并会产生编译时错误:

10 = 20

在Lua编程语言中,除了上述类型的分配的,所以可以有多个左值和右值在相同的单一语句。它如下所示。

g,l = 20,30

在上面的语句中,20被分配给g和30被分配到l。


您可以捐助,支持我们的公益事业。

1元 10元 50元





认证码: 验证码,看不清楚?请点击刷新验证码 必填



41 次浏览
9次
 捐助
 

每天2个文档/视频
扫描微信二维码订阅
订阅技术月刊
获得每月300个技术资源
 
 

关于我们 | 联系我们 | 京ICP备10020922号 京公海网安备110108001071号