Lua学习笔记

1、lua的优势

a、可扩张性     b、简单     c、高效率     d、和平台无关

2、注释

a、单行注释 --        b、多行注释 --[[  --]]

3、类型和值  

8个基本类型,检测变量类型用type
  a、nil         print(type(nil))  -->nil    
     全局变量没有赋值以前,会被默认nil类型

b、boolean     print(type(true)) -->boolean
       除了false和nil为假,其余都为真,所以lua中,0和空字符串都是真的

c、number
     表示实数

d、string
       1)  字符串不可修改
       2)  "\" 转义
       3)  "[[ ... ]]" 符号表示字符串,可以跨行
       4)  ".." 是字符串连接符, 数字之间 需要空格 避免错误解释
       5)  字符串和数字之间可以自动装换 ,但是 10 == "10" 比较永远是false, 需要使用tonumber() 将字符串转换为数字,反之用tostring()

e、userdata

f、function
       函数可以做参数,也可以做返回值

g、thread

h、table

4、表达式

a、算术运算符
       使用在number之间,+ - * /  包括负数符号 "-"

b、关系运算符
     <  >  <=  >=  == ~=
     比较的时候要保证比较值之间的类型一致

c、逻辑运算符
     and  or  not
     c = a and b   --a为false,a赋值给c,否则,将b赋值给c
     c = a or  b   --a为true, a赋值给c,否则,将b赋值给c
     not 返回true 或 false,类似 !

and优先级高于 or

d、连接符
     ..

e、运算符优先级

f、表的构造 {}

 5、基本语法

a、 赋值语句

b、局部变量和代码块
       使用local 创建一个局部变量
       局部变量在 do..end内

c、控制结构语句  

 if condition then
then-part
end; if condition then
then-part
else
esle-part
end; if condition then
then-part
elseif conditions then
elseif-part
...
else
else-part
end;

d、循环语句

 while condition do
do-part
end; repeat
repeat-part
until condition; for var = exp1,exp2,exp3 do
do-part
if condition then
break;
end;
end; for i,v in inpairs() do
statment;
end;

6、函数

a、 语法
       function func_name ( argument-list )
            statment-list
       end;

b、返回多个值

c、可变参数

d、命名参数

Lua 学习笔记(一)的更多相关文章

  1. [转]LUA 学习笔记

    Lua 学习笔记 入门级 一.环境配置 方式一: 1.资源下载http://www.lua.org/download.html 2.用src中的源码创建了一个工程,注释调luac.c中main函数,生 ...

  2. Lua学习笔记6:C++和Lua的相互调用

        曾经一直用C++写代码.话说近期刚换工作.项目组中的是cocos2dx-lua,各种被虐的非常慘啊有木有.     新建cocos2dx-lua项目.打开class能够发现,事实上就是C++项 ...

  3. Lua学习笔记4. coroutine协同程序和文件I/O、错误处理

    Lua学习笔记4. coroutine协同程序和文件I/O.错误处理 coroutine Lua 的协同程序coroutine和线程比较类似,有独立的堆栈.局部变量.独立的指针指令,同时又能共享全局变 ...

  4. (转)Lua学习笔记1:Windows7下使用VS2015搭建Lua开发环境

    Lua学习笔记1:Windows7下使用VS2015搭建Lua开发环境(一)注意:工程必须添加两个宏:“配置属性”/“C或C++”/“预处理器”/“预处理器定义”,添加两个宏:_CRT_SECURE_ ...

  5. Lua学习笔记:面向对象

    Lua学习笔记:面向对象 https://blog.csdn.net/liutianshx2012/article/details/41921077 Lua 中只存在表(Table)这么唯一一种数据结 ...

  6. Lua学习笔记(二):基本语法

    Lua学习指南:http://www.lua.org/manual/ 首先我们要明确的一点是:在Lua中,除了关键字外一切都是变量. Lua关键字 可以查看这个地址:http://www.lua.or ...

  7. Lua学习笔记一

    学习了有一周多了.之前一直不想献丑,但还是记录下这个过程. 第1章  开发软件搭建 1. ubuntu 下lua安装 sudo apt-get install lua5.1 2.win下的环境搭建. ...

  8. lua学习笔记

    工作需要,上周对lua赶进度似地学习了一遍,主要参考<lua中文教程>一书,中间参考一些<lua游戏开发实践>,首先说说这两本书,后者不适合初学,里面是对一个游戏脚本系统进行粗 ...

  9. 【Lua学习笔记之:Lua环境搭建 Windows 不用 visual studio】

    Lua 环境搭建 Windows 不用 visual studio 系统环境:Win7 64bit 联系方式:yexiaopeng1992@126.com 前言: 最近需要学习Unity3d游戏中的热 ...

随机推荐

  1. rsync学习

    echo "aabb" > pswd pswd rsync -Cvaz assert.awk stat@59.151.37.17::stat/read/aabb/assert ...

  2. 解读 《2014 最流行编程语言》 by Code Eval

    此文已转至http://cn.abnerchou.me/2014/02/23/fa87ae80/ 原文:点我 原文翻译:点我 首先了解下CodeEval是做什么的: A tool for auto e ...

  3. 测试Beetle.Redis+Web Api

    在Web Api里用Beetle.Redis调用Redis服务端的TIME命令返回一个json格式,然后客户端是用的HttpTest4Net做的测试: CPU:I7-3770 内存:4G+4G 硬盘: ...

  4. ural 1126 Magnetic Storms

    http://acm.timus.ru/problem.aspx?space=1&num=1126 #include <cstdio> #include <cstring&g ...

  5. qt-solutions提供了8个开源项目

    其实这是官方提供的源代码,至于为什么会另建项目,而没有整合到QT项目里去,我猜可能有2个原因: 1. 这几个项目本身不完善,并且也不是QT项目的核心,因此没有必要花精力去完善 2. 一定程度上可以维护 ...

  6. Web前端开发

    由于互联网的各种兴起,网页开发似乎也火了,催生了github上各种js的轮子,各种重复,各种框架和库,什么Jquery,bootstrap等等.面对这么多框架和库我们在工程上该如何取舍(trade-o ...

  7. B450配置

    电脑型号 联想 B450 笔记本电脑  (扫描时间:2015?5?7?操作系统 Windows 7 旗舰版 32位 SP1 ( DirectX 11 ) 处理器 英特尔 酷睿2 双核 T9800 @ ...

  8. HDU5141--LIS again (LIS变形)

    题意一个序列的LIS为MAX, 求连续子序列的LIS为MAX的个数. 先求出LIS,记录以a[i]结尾的LIS的长度,以及LIS起始位置(靠右的起始位置). 然后线性扫一遍,,线段树与树状数组的差距还 ...

  9. HDU-1978How many ways

    Problem Description 这是一个简单的生存游戏,你控制一个机器人从一个棋盘的起始点(1,1)走到棋盘的终点(n,m).游戏的规则描述如下:1.机器人一开始在棋盘的起始点并有起始点所标有 ...

  10. 高性能Java解析器实现过程详解

    如果你没有指定数据或语言标准的或开源的Java解析器, 可能经常要用Java实现你自己的数据或语言解析器.或者,可能有很多解析器可选,但是要么太慢,要么太耗内存,或者没有你需要的特定功能.或者开源解析 ...