Lua 5.3 参考手册学习笔记

介绍

Lua 是一种用于嵌入式系统开发的轻量级脚本语言。它是一种解释性语言,可以在不编译的情况下直接运行。Lua 的设计目标之一是提供一种简单、高效、可扩展的语言。Lua 5.3 是最新版本,相对于早期版本改进了很多方面。

基本语法

Lua 的基本语法与许多流行的编程语言相似。下面是一些基础概念:

变量

变量在 Lua 中是用来存储数据值的。变量在使用前需要声明。声明可以用关键字 local 进行,也可以省略。下面是一些示例:

Copy Code
local a = 1 b = 2

数据类型

Lua 支持多种类型的数据,包括数字、字符串、布尔值、nil 和表(table)等。下面是一些示例:

Copy Code
local a = 1 -- 数字 local b = "hello world" -- 字符串 local c = true -- 布尔值 local d = nil -- nil local e = {1, 2, 3} -- 表

流程控制

Lua 支持常规的流程控制语句,如 if, while, for 等等。下面是一些示例:

Copy Code
if a == 1 then print("a is one") elseif a == 2 then print("a is two") else print("a is not one or two") end while i < 10 do print(i) i = i + 1 end for i = 1, 10 do print(i) end for k, v in pairs(e) do print(k, v) end

函数

函数是 Lua 中的一等公民。函数可以被嵌套和传递,还支持匿名函数。下面是一些示例:

Copy Code
function add(a, b) return a + b end local add1 = function(a, b) return a + b end local add2 = function(a, b, f) return f(a + b) end

实例

下面是一个示例程序,用于计算 Fibonacci 数列:

luaCopy Code
-- 计算斐波那契数列 function fib(n) if n <= 0 then return 0 end if n == 1 then return 1 end return fib(n-1) + fib(n-2) end -- 打印前十个 Fibonacci 数 for i = 0, 9 do print(fib(i)) end

输出结果为:

Copy Code
0 1 1 2 3 5 8 13 21 34

结论

Lua 是一种简单、高效、可扩展的语言,适合于嵌入式系统开发和游戏脚本编写。学习 Lua 可以帮助程序员提高开发效率,因此深入学习 Lua 5.3 的语法和特性是非常有价值的。