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. 离线破win2003域账号密码(更新域数据库不在默认路径的情况)

    国内网站讲了许多方法,很多也讲得不清楚.我把我尝试成功的经验跟大家分享. 方法是按照tim的文章操作,链接如下: http://pauldotcom.com/2011/11/safely-dumpin ...

  2. 转:BZERO()等的区别

    BZERO()等的区别 bzero  原型: extern void bzero(void *s, int n); 用法: #include <string.h> 功能:置字节字符串s的前 ...

  3. NUnit+mock+moq单元测试

    [TestFixture] public class InstantBatchBuyTest { private string _mallAbc; private string _itemCode; ...

  4. 完整的开发一个ContentProvider步骤

    1.定义自己的ContentProvider类,该类需要继承Android提供的ContentProvider基类.2.向Android系统注册这个"网站",也就是在Android ...

  5. COJ 0020 30201象棋中的皇后

    30201象棋中的皇后 难度级别:B: 运行时间限制:1000ms: 运行空间限制:51200KB: 代码长度限制:2000000B 试题描述 在n×m的棋盘上放置两个相互攻击的皇后,总共有多少种不同 ...

  6. bzoj2821作诗

    http://www.lydsy.com/JudgeOnline/problem.php?id=2821 分块 我们把数列分成$\sqrt{N}$块 记$f[i][j]$表示第i块到第j块的答案,这个 ...

  7. HDU_2015——偶数求和

    Problem Description 有一个长度为n(n<=100)的数列,该数列定义为从2开始的递增有序偶数,现在要求你按照顺序每m个数求出一个平均值,如果最后不足m个,则以实际数量求平均值 ...

  8. JAVA的四种引用,强弱软虚用到的场景

    1.强引用 最常用的引用类型,如Object object = new Object(),只要强引用存在,GC必定 不回收,即使当前内存空间不足,jAVA虚拟机宁愿抛出OutofMemoryError ...

  9. 预处理、const与sizeof相关面试题

    1.用预处理指令#define 声明一个常数,用以表明一年中有多少秒(忽略闰年问题) #define语法知识: (1) 不能以分号结束,括号的使用防止宏定义展开后的二义性. (2) 预处理器将为你计算 ...

  10. 从epoll构建muduo-11 单线程Reactor网络模型成型

    mini-muduo版本传送门 version 0.00 从epoll构建muduo-1 mini-muduo介绍 version 0.01 从epoll构建muduo-2 最简单的epoll ver ...