代码例子:http://www.inf.puc-rio.br/~roberto/book/code.html

注意:没有“;”

1、特点:可扩展、简单、高效、跨平台

2、使用方式:嵌入程序、独立使用、和c混合使用【第三种】

3、print("Hello dily!");

4、chunck【语句组】一个 chunk 就是一串语句段,它们会被循序的执行。 每个语句段可以以一个分号结束

5、local局部变量,未声明是全局变量,必须初始化

6、类型:type("Hello dily!")----->string

7、string赋值后不可以改变,只能赋值给另一个变量【特殊字符用转义符/】【[[....]]也可以作为字符串】【使用..时候必须加上空格】

8、lua会自动装换字符串和数字【容易出错】

9、逻辑运算符:and比or优先级高

10、从table中删除字段的时候可以  t.x = nil【不推荐索引从0开始,否则很多库不能使用;可以用“,”和“;”分隔】

11、可以使用table模拟链表:

12、赋值:

a,b = b,a    先计算右边,后计算左边

当左右个数不一致时,按照左边变量个数为准,不足赋值nil

对多个变量赋值:a,b,c,d = 1,1,1,1

a,b = f()   f()可以返回两个值,正确

13、local只在当前控制结构、函数体、一个chunk内有效

14、泛型for循环
http://zhidao.baidu.com/link?url=jbRYfQ1GHIn67pScwuCSMyTiyyoyfvWRTvyFsBWMy8-Tw24viQNapinh4Eb33p4oWZerToxfiJjWSmsCkIssWK

pairs()可以遍历整个table,即包括数组及非数组部分。

ipairs()函数用于遍历table中的数组部分。

for key, value in ipairs(tbl) do

print(key, value)

end

key和value是一体的

15、break和return只能使用在【chunk最后一句,end、else、until之前】

16、函数,只有一个参数的时候可以省略  ()【不提倡】

17、面向对象:o:fo(x)和o.fo(o,x)是等价的

18、unpack方法,返回参数中的所有元素

19、可变参数 f(a,b,..)  arg[1]

20、虚变量  local _,x = string.find(s,p)

21、格式化方法:string.format()

22、排序【不自动排序,只提供处理方法的参数】:table.sort(t,function (a,b) return (a.name > b.name) end);

23、闭包:?????????????

24、局部变量,局部方法:必须先声明才可以使用局部方法

25、正确的尾调用:方法最后调用方法,调用完毕后就不用返回了

26、迭代器和闭包:???

27、泛性:for?????

lua中文教程【基本语法】的更多相关文章

  1. lua中文教程【高级知识】

    一.编译和运行和调试 1.lua和其他解释型语言一样,先转换成为中间码再执行 2.dofile和loadfile的区别:loadfile编译返回不执行,返回错误代码:dofile执行,返回错误信息 3 ...

  2. 转:Lua简明教程

    需要注意的是:lua中的变量如果没有特殊说明,全是全局变量,那怕是语句块或是函数里. 这里很奇怪,为什么在函数内部声明的变量默认也是global的呢? 函数的返回值 和Go语言一样,可以一条语句上赋多 ...

  3. Lua简明教程

    这几天系统地学习了一下Lua这个脚本语言,Lua脚本是一个很轻量级的脚本,也是号称性能最高的脚本,用在很多需要性能的地方,比如:游戏脚本,nginx,wireshark的脚本,当你把他的源码下下来编译 ...

  4. Groovy中文教程(链接收藏)

    学习Gradle前,需要有一个Groovy语言的基础,以免被Groovy的语法困扰,反而忽略了Gradle的知识.这里有一个Groovy的简明中文教程文档,可以快速学习Groovy的一些语法:http ...

  5. 学习Nim语言.rar(nim语言中文教程下载)

    学习Nim语言 nim 语法上类似python ,是一门静态编译型语言,nim 使用空格缩进标示语句块的开始和结束, 喜欢python风格的程序员应该也会很容易适应和喜欢nim的风格. nim语言官方 ...

  6. Swift中文教程(一)--欢迎来到Swift的世界

    原文:Swift中文教程(一)--欢迎来到Swift的世界 Apple凌晨时在WWDC发布了Swift编程语言,语法简介我很喜欢,市面上没有完整的中文教程,我在ibooks里面下载了英文原版,现在开始 ...

  7. director.js:客户端的路由---简明中文教程

    1.引子 最近学用director.js,那是相当的简单易学易使用.不过开始学的时候,搜搜过后,却没有发现相关的中文教程.于是决定硬啃E文,翻译备用的同时也当是给自己上课并加深对它的理解. direc ...

  8. webstorm的中文教程和技巧分享

    webstorm是一款前端javascript开发编辑的神器,此文介绍webstorm的中文教程和技巧分享.webstorm8.0.3中文汉化版下载:百度网盘下载:http://pan.baidu.c ...

  9. 读w3c中文教程对键盘事件解释的感想 -遁地龙卷风

    写这篇博文源于w3c中文教程对键盘事件的解释, onkeydown 某个键盘按键被按下 onkeypress 某个键盘按键被按下并松开 onkeyup 某个键盘按键被松开 可在实践中发现 只注册key ...

随机推荐

  1. Linux 下编译安装OpenCV(zhuanzai)

    http://www.cnblogs.com/emouse/archive/2013/02/22/2922940.html Cmake的安装 OpenCV 2.2以后版本需要使用Cmake生成make ...

  2. iOS移动开发周报-第19期

    iOS移动开发周报-第19期 前言 欢迎国内的iOS同行或技术作者向我提交周报线索,线索可以是新闻.教程.开发工具或开源项目,将相关文章的简介和链接在微博上发布并 @唐巧_boy 即可. [摘要]:本 ...

  3. mysql could not be resolved: Name or service not known

    问题: mysql DNS反解:skip-name-resolve 错误日志有类似警告: 1.120119 16:26:04 [Warning] IP address '192.168.1.10' c ...

  4. 目标检测之harr---角点检测harr 的opencv实现

    本系列文章由@浅墨_毛星云 出品,转载请注明出处. 文章链接: http://blog.csdn.net/poem_qianmo/article/details/29356187 作者:毛星云(浅墨) ...

  5. PostgreSQL与MySQL比較

    特性 MySQL PostgreSQL 实例 通过执行 MySQL 命令(mysqld)启动实例. 一个实例能够管理一个或多个数据库.一台server能够执行多个 mysqld 实例.一个实例管理器能 ...

  6. WinCE下使用C#的几个小技巧

    1.我们知道,在使用Windows的开发机上用C#启动一个外部程序的方法有很多,但这些方法用在使用WinCE的目标工控机上都无能为力,现在小嫚儿以打开一个IE为例,介绍如何在WinCE下使用C#来打开 ...

  7. # Playables API(翻译)

        The Playables API provides a way to create tools, effects or other gameplay mechanisms by organi ...

  8. EasyDarwin添加自定义的服务模块EasyMyModule

    EasyDarwin模块的要求 每个QTSS模块必须实现两个方法函数: 一个Main入口函数,服务器在启动的时候将调用这个方法函数,来对您开发的模块所在的QTSS stub库进行初始化. 一个Disp ...

  9. Windows server 2008 R2 如何启动任务计划程序

    使用windows server 2008 R2  的任务计划程序需要启动服务 Task Scheduler 服务, windows server 2008 R2 默认状态下Task Schedule ...

  10. zsh 的简单介绍

    什么是 zsh,要想解释好这个问题,那么得先说明什么是 shell.不负责任的解释说法就是 shell 就是一个壳.这个壳可不是蜗牛的壳,而是计算机的一个壳,当然也不是计算机的外壳啦,这个壳是相对于计 ...