Lua是什么
Lua我读作(撸娃)
Lua是一种轻量小巧的脚本语言,它使用标准C语言编写并以源代码形式开放。这意味着什么呢?这意味着Lua虚拟机可以很方便的嵌入别的程序里,从而为应用程序而整个Lua虚拟机编译后仅一百余K,通过适当的裁剪即可做到更小,十分适合嵌入式的开发。
同时,在现有脚本引擎中,Lua的运行速度占有绝对优势。这些都决定了Lua是作为嵌入式脚本的最佳选择。Lua 是巴西里约热内卢天主教大学(Pontifical Catholic University of Rio de Janeiro)里的一个研究小组于 1993 年开发的,该小组成员有:Roberto Ierusalimschy、Waldemar Celes 和 Luiz Henrique de Figueiredo。
在我们编写代码之前,需要做一下准备,就是:确保我们输入标点符号时,用的不是中文输入法。这点非常重要。
第一个Lua程序
几乎所有语言的第一行代码,都是输出hello world,本人当然也不能例外。在Lua中,查询查询结果打印只需要使用print这个函数即可。同时,如果需要使用函数,只需要在函数名后加上双括号,同时传入你想传入的值即可。
所以,我们来执行以下的代码,打印出hello world吧!
print("hi 我是初出茅庐的小李")
print("Hello World!")
Lua在线运行,代码编译测试 - 在线编译器(cainiaojc.com)
使用Lua输出数据
print("这是在进行中文的输出测试")
print("Hello i am Aqst-666")
print("第一个参数","第二个参数","第三个参数")
print("换行符n换行符")
print("制表符t制表符")
print("回车r回车")
print("退格b退格")
print("纵向制表v纵向制表")
print("\ 反斜杠")
print("'单引号")
print(""双引号")
a='alon123"'
print("第一种写法n",a)
a="alon123""
print("第2种写法n",a)
a='97lo10 4923"'
print("第3种写法n",a)
a= [[alo
123"]]
print("第4种写法n",a)
多行注释一般--[[开始,]]结束
print("这段代码会运行")
--print("我被注释掉了,所以不会运行")
--[[
我是多行注释
不管我写多少行
都不会影响代码运行
]]
--
Lua程序的标识符
Lua 标示符用于定义一个变量,函数获取其他用户定义的项。标示符以一个字母 A 到 Z 或 a 到 z 或下划线 _ 开头后加上 0 个或多个字母,下划线,数字(0 到 9)。最好不要使用下划线加大写字母的标示符,因为Lua的保留字也是这样的。Lua 不允许使用特殊字符如 @, $, 和 % 来定义标示符。Lua 是一个区分大小写的编程语言。因此在 Lua 中 Runoob 与 runoob 是两个不同的标示符。以下列出了一些正确的标示符:
mohd zara abc move_name a_123
myname50 _temp j a23b9 retVal
Lua程序的关键字
以下列出了 Lua 的保留关键词。保留关键字不能作为常量或变量或其他用户自定义标示符:
and | break | do | else |
elseif | end | false | for |
function | if | in | local |
nil | not | or | repeat |
return | then | true | until |
while | goto |
一般约定,以下划线开头连接一串大写字母的名字(比如 _VERSION)被保留用于 Lua 内部全局变量。
print("保留字测试")
print(_VERSION)
print("_VERSION代表的是Lua的版本号")
Lua 特性
-
轻量级: 它用标准C语言编写并以源代码形式开放,编译后仅仅一百余K,可以很方便的嵌入别的程序里。
-
可扩展: Lua提供了非常易于使用的扩展接口和机制:由宿主语言(通常是C或C++)提供这些功能,Lua可以使用它们,就像是本来就内置的功能一样。
-
其它特性:
-
支持面向过程(procedure-oriented)编程和函数式编程(functional programming);
-
自动内存管理;只提供了一种通用类型的表(table),用它可以实现数组,哈希表,集合,对象;
-
语言内置模式匹配;闭包(closure);函数也可以看做一个值;提供多线程(协同进程,并非操作系统所支持的线程)支持;
-
通过闭包和table可以很方便地支持面向对象编程所需要的一些关键机制,比如数据抽象,虚函数,继承和重载。
觉得不错就点在看哦~您的在看和关注就是我最大的更新动力!
右下角可以点击在看哦~↓↓↓
发表评论