• 第五周作业——对lua的学习


      因为团队项目的需要,最近在学习lua。下面介绍一下我对lua的了解和学习。

      一、lua介绍

      lua是一种脚本语言,由标准C编写而成,代码简介优美,像java一样具有跨平台性。它可以被C/C++调用,也可以调用C/C++中的函数。使用lua时可以将它作为扩展脚本,在嵌入式应用程序中,为其提供灵活的扩展和定制功能;也可以作为普通的配置文件,代替XML,ini等文件格式。在脚本引擎中使用运行速度基本上最快的lua可以取得事半功倍的效果。

     二、lua的运行方式

      lua有两种编程方式:交互式编程和脚本式编程。

      在交互式编程中,我们可以在命令行上运行lua命令后进入lua的shell中执行语句。

      在脚本式编程中,可以把脚本存成一个文件,用如下命令行来运行:>lua  file.lua;或是在代码开头添加:#!/usr/local/bin/lua,指定 Lua 的解释器 /usr/local/bin directory。(加上 # 号标记解释器会忽略它)

    。接下来我们为脚本添加可执行权限,并执行:./file.lua 。

     三、语法

     1、注释

       在lua中,单行注释符号为--,块注释为--[[        --]]。

     2、变量

      lua是动态类型语言,变量不要类型定义,只需要为变量赋值。 值可以存储在变量中,作为参数传递或结果返回。一般来说,lua中的变量均为全局变量,包括函数和语句块中的变量。除非变量前加了关键字local。如果你想删除一个全局变量,只需要将变量赋值为nil。

     3、数据类型

      lua中有8个基本类型分别为:nil:表示一个无效值(在条件表达式中相当于false)

      boolean:包含两个值:false和true

      number:表示双精度类型的实浮点数

      string:字符串由一对双引号或单引号来表示

      userdata:表示任意存储在变量中的C数据结构

      function:由 C 或 Lua 编写的函数

      thread:表示执行的独立线路,用于执行协同程序

      table:其实是一个"关联数组"(associative arrays),数组的索引可以是数字或者是字符串。在 Lua 里,table 的创建是通过"构造表达式"来完成,最简单构造表达式是{},用来创建一个空表。

     4、标示符

       lua是一个区分大小写的编程语言, 标示符以一个字母 A 到 Z 或 a 到 z 或下划线 _ 开头后加上0个或多个字母,下划线,数字(0到9), 不允许使用特殊字符如 @, $, 和 % 来定义标示符。

     5、其它

      . 循环

            while循环:while 条件 do … end
        repeat循环:repeat … until 条件
        for循环:for 变量 = 初值,终点值,步进 do … end
        for循环:for 变量1,变量2,… ,变量N in表或枚举函数 do … end

     .语句块
       语句块在C++/C中是用"{"和"}"括起来的,在Lua中,它是用do 和 end 括起来的。

     .赋值语句

          可以同时给多个变量赋值。

     .数值运算

       "^"表示指数乘方运算;连接两个字符串,可以用".."

     .比较运算

       除了不等于运算使用~=表示外,其它比较运算均与C/C++一样。

      (目前就了解和学习了这么多,在学的过程中都是将lua与C比较来学的,所以写的基本都是区别于C的东西。之后需将继续学习。)

     参考资料:http://job.17173.com/content/2009-01-22/20090122143452606,1.shtml

     

  • 相关阅读:
    mysql在第一次查询的时候很慢,第二次查询就比较快的原因?
    mysql的递归(使用函数)
    什么样的男人才是女人眼中最帅的男人
    面试题总结
    java的重载总结
    arduino读取GPIO数据
    electron+react项目改为typescript
    百度AI训练营笔记
    python读取文件出现ufeff问题
    大端小端
  • 原文地址:https://www.cnblogs.com/wanghaiy/p/5349539.html
Copyright © 2020-2023  润新知