【Lua基础】

表达式

--算术运算符
--[[
二元运算符:+ - * / ^   (加减乘除幂)
一元运算符:- (负值)
运算符的操作数都是实数
--]]
--关系运算符
--[[
< > <= >= == ~=
nil只和自己相等
比较数字按传统的数字大小进行
比较字符串按字母的顺序进行,但是字母顺序依赖于本地环境
--]]
--逻辑运算符
-- and or not
--连接运算符
print(0 .. 1)

函数

function Susake()
    return 3, 4
end

print(Susake())

控制语句

if 3 then
    print(3)
end

if(3) then
    print(3)
else
    print(4)
end

if(3) then
    print(3)
elseif 4 then
    print(4)
else
    print(5)
end

i = 4
while i >= 0 do
    print(i)
    i = i - 1
end

i = 4
repeat
    print("Susake")
    i = i - 1
until i == 0

for i = 1, 3 do
    print(i)
    if(i == 2) then
        break
    end
end

数据类型

--[[
nil
boolean
number
string
userdata
function
thread
table
--]]
Susake = {1, 2, 3, 4}
print(type(nil))
print(type(true))
print(type(1314))
print(type("Susake"))
--print(type())
print(type(print))
--print(type())
print(type(Susake))
--nil
--一个全局变量没有被赋值以前默认值为nil,给全局变量负nil可以删除该变量
--boolean(false, true)
--除了false和nil为假,其他值都为真
--number
--表示实数,Lua中没有整数
--string
--string和numbers之间自动进行类型转换
--function
--userdata
--thread
--table

协调程序

co = coroutine.create(function()
    print("Susake")
end)

print(co)
--suspended 挂起态
--running 运行态
--dead 停止态
print(coroutine.status(co))
coroutine.resume(co)
print(coroutine.status(co))
时间: 2024-10-14 13:09:25

【Lua基础】的相关文章

Lua基础 coroutine —— Lua的多线程编程

Lua的coroutine 跟thread 的概念比较相似,但是也不完全相同.一个multi-thread的程序,可以同时有多个thread 在运行,但是一个multi-coroutines的程序,同一时间只能有一个coroutine 在运行,而且当前正在运行的coroutine 只有在被显式地要求挂起时,才会挂起.Lua的coroutine 是一个强大的概念,尽管它的几个主要应用都比较复杂. 1. Coroutine 基础 Lua将coroutine相关的所有函数封装在表coroutine 中

Lua基础——赋值语句、表达式、流程控制

赋值语句 注释,用(--)来表示 定义,lua中没有定义(申明数据类型),它是通过赋值来确定其数据类型的. 赋值,是改变一个变量的值和改变表域的最基本的方法. a = "hello" .. "world" Lua可以对多个变量同时赋值,变量列表和值列表的各个元素用逗号分开,赋值语句右边的值会依次赋给左边的变量.a, b = 10, 2*x <--> a=10; b=2*x 遇到赋值语句Lua会先计算右边所有的值然后再执行赋值操作,所以我们可以这样进行交换

Lua基础(二)——表

表 a = { } b = { x = 1, ["hello, "] = "world!" } a.astring = "ni, hao!" a[1] = 100 a["a table"] = b function foo() end function bar() end a[foo] = bar --分别穷举表a和b for k, v in pairs(a) do print(k, "=>", v)

lua基础

lua基础 1.开发环境IDE及语法高亮 mac上安装lua brew install lua (1)sublime Text 2 新建lua.sublime-build的规则 (mac) { "cmd":["/usr/local/bin/lua","$file"], "file_regex":"^(...*?):([0-9]*):?([0-9]*)", "selector":"

CC3.2+Lua(2) ——Lua基础语法1

[唠叨] 首先,我已经默认你已经学过至少一门宿主语言了(C++.Java等),然后转向学习Lua. 因为51cto中对于Lua语言没有代码高亮,为了让代码看起来丰富多彩,我只好用截图了. 本节内容仅介绍Lua的简单基础语法,更多用法请百度:Lua中文教程 . Lua参考手册 . [学习感慨]     > 语句末尾不需要加分号 ;      > 语句块不是用花括号 { } , 而是 do 语句块 end 表示语句块的开始和结束.         而 花括号 {} 表示的为一个 表结构 .    

Lua 基础简明教程

注释 写一个程序,总是少不了注释的. 在Lua中,你可以使用单行注释和多行注释. 单行注释中,连续两个减号"--"表示注释的开始,一直延续到行末为止.相当于C++语言中的"//". 多行注释中,由"--[["表示注释开始,并且一直延续到"]]"为止.这种注释相当于C语言中的"/**/".在注释当中,"[["和"]]"是可以嵌套的. Lua 编程 经典的"He

Lua 基础:调用函数时用点号还是用冒号

本文转载于:http://www.benmutou.com/archives/1789 1.初学者最易混乱Top1——调用函数时用点号还是用冒号? 我们来看看下面的两句代码: mSprite.setPosition(100, 20); mSprite:setPosition(100, 20); 对于初次接触Lua的朋友来说,这简直就是噩梦,为嘛函数的调用有两种形式,是让我们随便挑的意思吗? 这两种形式是有区别的,区别很大,但只有一个. 不过,暂时不解释,后面再介绍. 2.最简单的类 我们先来看看

项目中lua(基础)

关于项目中lua任务(某些没弄懂,但lua上耗费时间有点长了不看了) 这段时间看了lua语法和项目中lua应用 1.在lua中注册c库,在lua5.2中好像都是注册c库,相当于在lua中定义一个table,key是函数名字,value是函数指针 m_spLuaState->RegLib("game", funcs); 2.加载项目中所有lua并执行 刚开始不知道那个dofile具有执行lua的功能,结果是返回0表示成功,执行lua就是执行其中定义的一些函数和全局变量(普通变量,表

lua基础【五】I/O文件操作

--[[ lua文件操作相关I/O ]]-- --可以规定在特定目录下打开一个文件,如果该文件不存在的话, --lua会帮助我们在你规定的目录下创建这个文件,前提是该目录要存在 --[[ 同时我们应该掌握写入文件的模式: 对以下写入模式进行说明: "r" 模式:读模式(该模式下,只允许对文件进行读取内容,不容许写入) "w":写模式(允许对文件进行写入,上次的文件内容会因为本次的写入而被替换掉) "a":添加模式 "w+":更

Lua学习----Lua基础数据类型

前言 Lua有6中数据类型,分别是nil(空).boolean(布尔).number(数字).string(字符).table(表).function(函数) 在Lua中可以使用type函数来返回一个值或者变量所属的类型,如: print(type("helle world")) -->output:string print(type(print)) -->output:function print(type(true)) -->output:boolean 1.ni