捕获捕获是这样一种机制:可以使用模式串一部分匹配目标串一部分。将你想捕获模式用圆括号括起来,就指定了一个捕获。在string.find使用捕获时候,函数会返回捕获值作为额外结果。这常被用来将一个目标串拆分成多个:pair = "name = Anna"_, _, key, value = string.find(pair, "(%a+)%s*=%s*(%a+)")print(key,
转载 2024-04-25 14:52:51
34阅读
源自OGDEVHACK文章, 在你游戏中应用Lua(1):在你游戏代码中运行解释器  通常,你希望在你游戏开始时候读取一些信息,以配置你游戏,这些信息通常都是放到一个文本文件中,在你游戏启动时候,你需要打开这个文件,然后解析字符串,找到所需要信息。  是的,或许你认为这样就足够了,为什么还要使用Lua呢?  应用于“配置”这个目的,Lua提供给你更
转载 2024-05-25 16:16:47
106阅读
string函数string.byte (s,[,i[,j]])返回字符串内部编码s[i],s[i+1],...,s[j]。i默认是1,j默认是i; 和|string.sub|规则相同。内部编码不一定可移植。 string.byte("hello",1,5) 在mac上返回104,101,108,108,111string.char (…)接收零个或多个整数。返回由参数编码组成字符串
转载 2024-03-16 09:08:37
169阅读
babel-cli: es6转码1.安装:   npm install --global babel-cli 全局安装    1.安装:   npm install --global babel-cli 全局安装npm install --save_dev babel-cli  本地安装2.使用: 2.使用:babel babel_test.js 输出到控制台 babel babel_
Lua C API编程上,经常有一些博客会说,必须使用luaL_newmetatable和luaL_setmetatable来给userdata加元表。还说给userdata加元表不是普通table。于是本着不信邪态度,我翻了一下源码并自己尝试写了一些测试。普通表能做userdata元表么对于这个问题,我觉得是可以,因为Lua中只有这一种数据结构,不存在什么特别的表。class A
转载 2024-04-09 10:28:22
137阅读
最近在看lua,看到泛型for一脸懵逼,完全不知道究竟是怎么运转,今天拿一个常见例子来跟大家讲个透彻!!! 泛型 for 执行过程:(1) in  后面表达式应返回:迭代函数、状态常量、控制变量; 如果表达式返回结果个数不足三个会自动用 nil 补足,超出三个会被忽略。(2) 向 迭代函数 传入两个参数 状态常量、控制变量 ,迭代函数第一个返回值
转载 2024-07-31 08:47:22
79阅读
SparseArray是Android framework中提供轻量级键值对数据结构,我们知道空间和效率从来都是相悖,SparseArray实现正是以时间来换取空间效率,适合小规模数据存储。下面来了解下SparseArray特点,使用,并分析部分源码。一、特点SparseArray以键值对形式保存数据,key是int类型,并且是唯一不允许重复key,而value可以是任何obje
1 项目版本管理控制流程规范好处1. 保证各个环境(开发、测试、生产、主干)独立,避免相互影响 2. 各个环境职能更明显,开发分支只负责开发,测试分支只用于测试,各司其职,提高开发和测试效率 3. 多个版本,多次合并,便于追溯问题 4. 开发版本没有问题才会合并到测试版本,测试版本没有问题才会合并到生产版本,每次合并都尽量的确保了代码正确性,提高软件版本稳定性, 5.
位运算是指按二进制进行运算。在系统软件中,常常需要处理二进制位问题。C语言提供了6个位操作运算符。这些运算符只能用于整型操作数,即只能用于带符号或无符号char,short,int与long类型。 C语言提供位运算符列表: 运算符 含义 描述 & 按位与 如果两个相应二进制位都为1,则该位结果值为1,否则为0 | 按位或 两个相应二进制位中只要有一个为1,该位结果值
本文转载于笨木头博客,嘿嘿,向大神学习这篇文章主要介绍了Lua中__index和__newindex之间沉默与合作,本文着重讲解了__index和__newindex之间联系,需要朋友可以参考下因为不想在一篇文章挤太多知识点,所以,有些小知识点就集合到这样文章吧~1.沉默技能——拒绝__index和__newindex效果虽然__index和__newindex是很好用功能,但是,
提到LUT,很多人可能都会觉得这是一个很专业很高深词汇,LUT其实就是Lookup Table(颜色查找表)缩写,简单点儿理解就是:通过LUT,你可以将一组RGB值输出为另一组RGB值,从而改变画面的曝光与色彩。用一个最简单模型帮助大家理解就是:如果我们规定: 当原始R值为0时,输出R值为5; 当原始R值为1时,输出R值为6; 当原始R值为2时,输出R值为8; 当原始R值为3时,输出R值为1
table 是 Lua 一种数据结构用来帮助我们创建不同数据类型,如:数组、字典等。 Lua table 使用关联型数组,你可以用任意类型值来作数组索引,但这个值不能是 nil。 Lua table 是不固定大小,你可以根据自己需要进行扩容。 Lua也是通过table来解决模块(module)、包(package)和对象(Object)。 例如string.format表示使用”for
转载 2024-03-06 18:16:37
406阅读
汇编指令大全 一、数据传输指令 ─────────────────────────────────────── 它们在存贮器和寄存器、寄存器和输入输出端口之间传送数据. 汇编指令大全 1. 通用数据传送指令. MOV 传送字或字节. MOVSX 先符号扩展,再传送. MOVZX 先零扩展,再传送. PUSH 把字压入堆栈. POP 把字弹出堆栈. PUSHA 把AX,CX,DX,BX,SP,BP
 赫夫曼树,别名“哈夫曼树”、“最优树”以及“最优二叉树”。学习哈夫曼树之前,首先要了解几个名词。 哈夫曼树相关几个名词路径:在一棵树中,一个结点到另一个结点之间通路,称为路径。图 1 中,从根结点到结点 a 之间通路就是一条路径。路径长度:在一条路径中,每经过一个结点,路径长度都要加 1 。例如在一棵树中,规定根结点所在层数为1层,那么从根结点到第 i 层结点路径长度为 i -
1、Lua语言定义 标识符不能以数字作为起始符,也要避免下划线(_)接大写字母,因为这是Lua自身保留,如_Start。     常量:全大写和下划线,如MY_CONSTANT     变量:第一个字母小写,如myValue     全局变量:第一个字母用小写g表示,如gMyGlobal     函数名:第一个字母大
  AJAX即“Asynchronous JavaScript and XML”(异步JavaScript和XML)以后会被改为Ajaj(Asynchronous JavaScript and object notation)这个很难说啊!!说到JSon,那当然要提及xml,XML是进行数据交换标准方式这种用于表示客户端与服务器间数据交换有效负载格式,几乎已经成了Web services同义
Lua常用开发库:JSON库、编码转换、字符串处理整理前言一丶JSON库1.1、test_cjson.lua1.2、example.conf配置文件1.3、访问如http://192.168.1.2/lua_cjson将得到如下结果lua-cjson文档学习dkjson2.1、下载dkjson库2.2、test_dkjson.lua2.3、nginx目录中配置**.conf配置文件2.4、访问如
转载 2024-03-01 17:47:32
372阅读
1.单行注释-- 2.多行注释--[[注释内容]] 3.ifelse if 条件 then ... elseif 条件 then ... else ... end 4.whiledo while 条件 do ... end 5.for for i=1,10,1 do ... end 6.语句块 语句块在C中是用"{"和"}"括起来,在Lua中,它是用do 和 end
转载 2024-05-22 20:30:09
44阅读
table.c 代码分析全局符号,常量,字符串,关联数组,文件列表定义。全局符号:初始有 5 个基本符号,Lua 预设函数和库函数都注册在里面。常量:初始几个常量是 Lua 中 type 名字。字符串表,关联数组表,文件列表 所有的这些在 table.c 中定义这些数组可以认为是 Lua 全局注册表空间,Lua 环境。函数分析/* ** Given a name, search
I/O库用于读取和操作Lua文件。 Lua中有两种文件操作,即隐式文件描述符和显式文件描述符。对于以下示例,将使用示例文件 - test.lua,内容如下所示 --- sample test.lua-- sample2 test.luaLua文件打开操作使用以下语句 -file = io.open (filename [, mode]) 下表列出了各种文件模式 -编号模式描述1r&n
  • 1
  • 2
  • 3
  • 4
  • 5