Lua
文章平均质量分 51
屠变恶龙之人
这个作者很懒,什么都没留下…
展开
-
Lua和C的交互
要理解Lua和C交互,首先要理解Lua堆栈。简单来说,Lua和C/C++语言通信的主要方法是一个无处不在的虚拟栈。栈的特点是先进后出。 介绍lua和c的亲密接触,靠的是一个虚拟栈。lua通过这个虚拟栈来实现和c之间值的互传。栈上的每一个元素是一个lua值(nil,number,string...)。当lua调用c函数的时候,这个函数会得到一个新的栈,这个栈独立于c函数本身的栈转载 2016-11-18 13:40:53 · 339 阅读 · 0 评论 -
Lua之循环
1、 while循环a=10while( a 20 )do print("a 的值为:", a) a = a+1end2、 for 循环Lua 编程语言中 for 循环语句可以重复执行指定语句,重复次数可在 for 语句中控制。Lua 编程语言中 for语句有两大类:1)数值for循环2)泛型for循环原创 2016-12-22 17:33:05 · 730 阅读 · 0 评论 -
Lua之闭包
什么是闭包?闭包在Lua中是一个非常重要的概念,闭包是由函数和与其相关的引用环境组合而成的实体。我们再来看一段代码:复制代码 代码如下:function newCounter()local i = 0return function () -- 匿名函数i = i + 1return iendendc1 = newCounter()print(转载 2016-12-28 11:06:51 · 187 阅读 · 0 评论 -
Unpack函数
unpack它接受一个数组(table)作为参数,并默认从下标1开始返回数组的所有元素,例子代码如下:[cpp] view plain copydo arrayData = {"a", "b", "c", "d", "e"}; function returnMoreValues() r转载 2016-12-28 11:44:46 · 905 阅读 · 0 评论 -
pair和ipairs总结
一、区别pairs()函数可以遍历整个table,即包括数组和非数组部分;ipairs()函数只用于遍历 table中的数组部分。二、举例 1) local tabFiles = { "a", "b", [4] = "c" , --正好3,4连着,如果后二者为7,8,则iparis只输出前原创 2017-02-08 22:47:17 · 570 阅读 · 0 评论 -
table库
一、table.insert() 1) t={10,20,30} table.insert(t,1,15) --(表名,位置,值) -> t={15,10,20,30} 2) table.insert(t,15) --(表名,值) -> t={10,20,30,15} 默认插在原创 2017-02-09 10:17:46 · 211 阅读 · 0 评论 -
Lua基础
1、交互式编程Lua 提供了交互式编程模式。我们可以在命令行中输入程序并立即查看效果。Lua 交互式编程模式可以通过命令 lua -i 或 lua 来启用:$ lua -i $ Lua 5.3.0 Copyright (C) 1994-2015 Lua.org, PUC-Rio> 在命令行中,输入以下命令:> print("Hello World!")原创 2016-12-22 15:22:01 · 303 阅读 · 0 评论 -
lua数学库math
三角函数sin、cos、tan、asin、acos,单位:弧度指数与对数exp、log、log10,eg:exp(2)= e^2取整floor:floor(3.85) = floor(3.15) = 3ceil: ceil(3.85) = ceil(3.15) = 4生成伪随机数1、random for i=1, 5 do原创 2017-06-20 15:55:56 · 388 阅读 · 0 评论