<1>Lua 环境搭建与语法基础

本文介绍了Lua语言的基础知识,包括变量类型、条件控制语句、循环语句等,并演示了如何使用Lua进行基本的编程操作,如定义函数、使用Table等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

故事是这样的,目前我们的游戏没有做到代码级别的动态更新,所以很多时候维护一个bug都非常头疼,新项目我准备使用lua来做动态更新,减少游戏玩家因为维护bug不得不去更新一个比较大的包的流失。

经过一番的探索,发现目前市面上效率最高的是ulua ,所以决定使用ulua,之前有学习过一些lua方面的知识,这里回顾一下,方便以后查阅,也是当回忆一下这里面的知识。

首先下载一下lua的编辑器 这里提供我使用的 下载地址, 下面是我的学习语法基础的部分,方便自己以后回忆

--变量类型 所有的数值型都视为 double--
num_int = 10;
num_float = 10.1
num_double = 10.001
numOX = 0xff
print("num_int =", num_int, "num_float =",num_float, "num_double =",num_double, "numOX =",numOX );

--条件控制语句--
age=60;
sex ="female"
if age==40 and sex=="male" then
	print("你是40岁")
	elseif age>60 and sex~="female" then
	print("你是60岁以上的 男人");
	else
	print("你是其他类型");
end

--FOR循环语句--
sum=0;
for i=1,100 do
	sum = sum+i
end
print("for sum=",sum);

--FOR循环语句(带步长的2,表示步长)--
sum=0;
for i=1, 10, 2 do 
	sum = sum+i;
end
print("for sum2 =", sum);

--while循环--
sum=0;
maxSum=100;
while(sum<=maxSum)do
	sum=sum+1;
end
print("sum_while=",sum);

--------------------------函数--------------------------

--函数-- (注意print里面不是使用 + 而是使用 ,)
function fun(n)
	if n<2 then return 1 end
	return n;
end
print("fun return num =", fun(3));

-- 函数 实参多余形参,则舍弃多余的实参;若实参不足,则多余的形参初始化为nil --
function funMutiPara(a, b)
	return a, b;
end

x, y, z = funMutiPara(20, 30, 40);
print("funMutiPara return num =", x," , ",y, " , ", z);


-- 函数(变长参数)--
function funValidate(...)
	return ...;
end
x, y, z = funValidate(20, 20, 20);
print("funValidate return num =", x," , ",y, " , ", z);


--------------------------Table--------------------------
mytable={name="pdw",age=18, handsome="帅吗"}
print("修改前 mytable {name =", mytable.name, " , age =" ,mytable.age, " , handsome =", mytable.handsome);

mytable.handsome = "帅爆了"; -- 修改元素 --
mytable.address ="上沙野店"; -- 新加入元素进去 --
mytable.age = nil; -- 删除元素(此元素讲不存在table 里面了) --
print("修改后 mytable {name =", mytable.name, " , age =" ,mytable.age, " , handsome =", mytable.handsome, " , address =", mytable.address);
--遍历table--
for k, v in pairs(mytable)do 
	print(k, v);
end


--------------------------Array, 数组下表从1开始的--------------------------
arr={10, 20, "hello lua"}
print("Array[1] = ", arr[1], ", Array[3] = ", arr[3], ", 数组长度 =", #arr);

--访问全局变量 通过 _G 的方式--
print(_G.x);

--------------------------文件--------------------------
--加载并语法.lua文件,只执行一次--
require("语法");
--加载并执行对应的文件--
dofile("语法.lua");
--加载文件,延迟到file()在执行--
local file = loadfile("语法.lua");
print(file);
file();

预告: 明天开始学习ulua里面的东西了~~













评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值