日常生活的交流与学习

首页 新随笔 联系 管理

在线运行lua的luatos

img

变量

  1. a是本地变量
  2. b是全局变量
    img

nil

  1. 未赋值的变量c,其值是nil
    img

批量赋值

img

img

img

16进制和科学计数法

img

字符串支持双引号和单引号

img

原始字符串

  1. [[ ]]中的字符串保持原样
    img

字符串拼接,使用两个点

img

字符串转数字,数字转字符串

  1. tostring
  2. tonumber

img

  1. 'abc'无法转换成数字,所以输出nil
    img

字符串的长度

  1. 字符串前面加上#
    img

函数

传统形式

img

赋值形式

img

函数传参

img

  1. 形参有a,b,c,只传了前两个形参,c没有传递,所以输出nil
    img

函数返回值

img

img

img

table表

  1. lua的table表,可以存放各种数据类型
    img

  2. 超出table表索引的值输出为nil
    img

1.直接通过索引赋值
img

  1. table的长度和字符串的长度类似,都是前面加上#
    img

table插入

  1. table表插入数据,insert实在最后面插入,这个和其他语言有些区别
    img

  2. 第二个位置插入
    img

移出

img

img

字符串下标

  1. 这个类似js中的对象,一些语言中的map

img

取值

方括号形式

  1. 使用方括号的形式,其索引可以不是标准类型的变量命名形式

img

  1. 这个table中的最后一个索引的名称就是不符合变量命名规范
    img

点的形式

  1. 点的形式,那么这个索引就是必须符合变量命名规范的命名才可以
    img

  2. 也可以通过索引直接赋值
    img

  3. 未赋值的索引对应的值输出为nil
    img

全局变量_G

  1. 所有你定义的变量,以及一些系统的内置函数都是放在这个变量里面,可以理解成面向对象语言中的object
    img

  2. 自定义的变量a
    img

  3. table表的insert方法
    img

算术运算符

  1. 需要注意的是lua的中不等于是~=,其他语言多使用!=
    img

逻辑运算符

  1. 需要主语的是除了false和true可以表示真假之外,0和1并不能表示真假,所以0也是真,此外nil是假
    img

  2. 0是真
    img

逻辑运算模拟三目运算符

img

if判断

if then
else
end

img

if then
elseif then
else
end

img

for循环

img

步长

img

递减形式

img

循环变量无法修改

  1. 循环变量无法在循环体内进行修改
  2. 第三行程序就是理解你定义了一个i变量,而不是循环的那个变量i
    img

break

img

while循环

  1. 注意的是lua没有自减运算符,所以n=n-1
    img

字符串补充

  1. 存放十六进制的数
    img

  2. 取出第二个位置的字符
    img

  3. 可以存放0x00字符,因为这个在c语言中是结束符
    img

lua5.3语法参考手册

img

感谢

  1. 以上笔记内容基于哔站up主,每日喝粥,视频链接
    https://www.bilibili.com/video/BV1vf4y1L7Rb/?spm_id_from=333.337.search-card.all.click&vd_source=ad8601ed9bb76e588f3ce7eadbc3af33
posted on 2023-03-12 22:10  lazycookie  阅读(39)  评论(0编辑  收藏  举报