关于lua的那些事
1.lua是一个脚本语言,由巴西里约热内卢天主教大学Roberto Ierusalimschy、Waldemar Celes 和 Luiz Henrique de Figueiredo三人所组成的研究小组于1993年开发的
优点:小巧、灵活性强(能够很好地嵌入到应用程序中)、可塑性强(几乎能够在所有操作系统和平台编译、运行)、
缺点:不适合作为单独开发应用程序的语言
特性:
- 支持交互式编程和脚本式编程
设计理念:为了给应用程序提供一些扩展功能
lua支持操作系统较多,我这里使用的是linux,在linux里安装lua有两种方式,
- 可以直接去官网下载lua最新版本(http://www.lua.org/ftp/lua-5.3.5.tar.gz)
- 使用命令行方式:(1).
curl -R -O http://www.lua.org/ftp/lua-5.3.5.tar.gz (2).tar -zxvf lua-5.3.5.tar.gz (3).cd lua-5.3.5 (4).make linux test - 此时安装可能会出错误:原因是需要安装lua相关依赖库,执行如下命令
yum install libtermcap-devel ncurses-devel libevent-devel readline-devel - 检查lua是否安装成功:lua
2.先来讲讲交互式编程
其意思就是说通过命令行方式启动lua,然后输入你想执行的语句,如下图:

3. 其次再看看脚本式编程
意思就是先编写一个lua脚本(类似于java中的一个类文件),以.lua结尾,如下图:



5.注释
单行注释:--
多行注释:--[[ --]]
6.变量
全局变量:a = 1
局部变量:local b = 2
注意:如果变量没有初始化,就为nil

7.lua中的数据类型
| 数据类型 | 111111111111111111111111 |
| nil | 表示无效值(nil属于该类型) |
| boolean | 包含两个值:false和true。 |
| number | 表示双精度类型的实浮点数 |
| string | 字符串由一对双引号或单引号来表示 |
| function | 由 C 或 Lua 编写的函数 |
| userdata | 表示任意存储在变量中的C数据结构 |
| thread | 表示执行的独立线路,用于执行协同程序 |
| table | Lua 中的表(table)其实是一个“关联数组”(associative arrays),数组的索引可以是数字、字符串或表类型。在 Lua 里,table 的创建是通过“构造表达式”来完成,最简单构造表达式是{},用来创建一个空表。 |
8.流程控制
(1).if语句
(2).if...else语句
(3).while循环
(4).for循环
(5).repeat…until语句
(6).函数
(7).表
(8).模块
关于lua的那些事的更多相关文章
- Lua模块
在lua中,我们可以直接使用require(“model_name”)来载入别的文件,文件的后缀名是.lua,载入的时候直接执行那个文件了. 比如:my.lua 文件中 print(“hello wo ...
- 理解 Lua 的那些坑爹特性
按:最近看到了依云的文章,一方面,为Lua被人误解而感到十分难过,另一方面,也为我的好友, 依云没有能够体会到Lua的绝妙和优雅之处而感到很遗憾,因此我写了这篇文章,逐条款地说明了 依云理解中出现的一 ...
- Metatable让我从心认知了Lua(相知篇)
自从在公司和Lua第一次相遇之后,我的IT生涯从此也开启了另一个新篇... 起初并没有和Lua产生相遇时的那种电石火花般的怦然心动...但... 说实话虽然我的心没有因此触动但至少也不排斥...因为公 ...
- wrapper for lua
考虑使用已经有的dll,要写wrapper,使得在lua中能调用dll里的函数,嗯,参考<Programming in lua>,然后仿写luars232. 一.函数定义 先分析一个函数的 ...
- Lua简易入门教程
环境:lua for windows (lfW)主页:http://luaforwindows.luaforge.net/https://code.google.com/p/luaforwindows ...
- 51CTO专访淘宝清无:漫谈Nginx服务器与Lua语言
http://os.51cto.com/art/201112/307610.htm 说到Web服务器,也许你第一时间会想到Apache,也许你会想到Nginx.虽然说Apache依然是Web服务器的老 ...
- Lua 5.1 参考手册
Lua 5.1 参考手册 by Roberto Ierusalimschy, Luiz Henrique de Figueiredo, Waldemar Celes 云风 译 www.codingno ...
- lua 和 c
lua程序其实本身并不能执行,它必须依靠c语言编写的解释器来解释执行,或者说解释器为lua脚本的执行,提供了一个运行环境(lua_state),其中包括函数堆栈,内存分配和回收等机制. 理论上,lua ...
- windows & mac 安装lua
mac从源码编译安装是最方便的,lua源码不足两万行,编译几秒钟的事. 打开terminal,依次输入以下命令: curl -R -O http://www.lua.org/ftp/lua-5.2.3 ...
随机推荐
- chrome清除缓存、不使用缓存而刷新快捷键
Ctrl+Shift+Del 清除Google浏览器缓存的快捷键 Ctrl+Shift+R 重新加载当前网页而不使用缓存内容 转载于:https://www.cnblogs.com/JAVA-ST ...
- Leo2DNT(雷傲论坛转DiscuzNT)1.0转换程序发布
数据转换程序 雷傲论坛(Leobbs4.x) -> Discuz!NT V1.0 本转换程序基于Leobbs4.x设计 声明: 1.本程序只对数据作转换,不会对原来的雷傲论坛(数据 ...
- c/c++头文件的摘抄
C/C++常用头文件 以及简单应用介绍 C/C++头文件一览 C #include <assert.h> //设定插入点 #include <ctype.h> //字符处理 # ...
- CodeForces - 1245F Daniel and Spring Cleaning (数位DP)
While doing some spring cleaning, Daniel found an old calculator that he loves so much. However, it ...
- IDEA破解,自动激活【2020年版本也可以破解】
破解 在破解之前,需要下载的文件有两个ideaIU-2019.3.3.exe.jetbrains-agent-latest.zip,前者是程序安装包,后者是破解补丁包(PS:补丁包里面有使用说明,下面 ...
- Struts Scan工具的使用
前言 最近看了关于Struts2漏洞,参考文章 https://www.freebuf.com/vuls/168609.html,这篇文章里对Struts2的漏洞及原理进行了详细的讲解.自己也从网上找 ...
- SSM的医院管理系统录像
视频观看地址:http://mp.toutiao.com/preview_article/?pgc_id=6806135073323090444
- Java return 关键字
一.基本概念 return一方面用在循环语句中来结束循环,另一方面用来终止函数的执行或者退出类的方法,并把控制权返回该方法的调用者.如果方法有返回类型,则return的返回该类型的值:如果没有返回值, ...
- 加速你的网络!软路由构建 去AD+国内域名加速解析+抗污染+速度优选 与PSW无缝集成 综合方案
本方案利用OpenWrt搭建4级DNS,实现 去AD + 国内域名加速解析 + 抗污染(域名解析按地区分流)+ 访问速度优选. 方案涉及部分软件配置细节可以参照之前博文:https://www.cnb ...
- 【Hadoop离线基础总结】流量日志分析网站整体架构模块开发
目录 数据仓库设计 维度建模概述 维度建模的三种模式 本项目中数据仓库的设计 ETL开发 创建ODS层数据表 导入ODS层数据 生成ODS层明细宽表 统计分析开发 流量分析 受访分析 访客visit分 ...