Lua
平头哥糊口养家
在深圳龙华的一小民宅
展开
-
lua计算指定某天的时间戳,计算指定某天的开始时间,结束时间
local function count_time(args) local today = os.date("*t") local start_today = os.time({day = today.day, month = today.month, year = today.year, hour = 0, min = 0, sec = 1}) local end_today = os.time({day = today.day, month = today.month, year原创 2020-06-09 16:56:11 · 938 阅读 · 0 评论 -
lua string.byte 、string.pack 、string.unpack
lua string.packstring.pack(),将常用字符根据给定的存储格式转换为ASCII码lua string.bytestring.byte() 将一个ASCII字符还原回常用字符lua string.unpackstring.unpack(),将ASCII码字符转为常用的字符--例子1local str = '258'local ascii_str = st...原创 2020-01-09 20:27:58 · 7206 阅读 · 0 评论 -
lua string.pack string.unpack 学习
在了解string.pack string.unpack 之前,先了解一下 大端编码和小端编码大端字节序(网络字节序) 和 小端字节序(主机字节序)大端就是将高位字节放到内存的低地址端,低位字节放到高地址端。网络传输中(比如TCP/IP)低地址端(高位字节)放在流的开始,对于2个字节的字符串(ab),传输顺序为:a(0-7bit)、b(8-15bit)。之所以又称为 网络字节序,是因为网络传...原创 2020-01-02 18:03:13 · 16913 阅读 · 4 评论 -
Lua代码加密 LuaJit代码加密
Lua支持源码加载和二进制加载,一些项目发布时需要做代码加密,现在简单写一下把lua代码转为二进制进行加密的方法。1 、 lua代码加密。在下载安装lua后,找到 luac 这个可执行文件,可在当前目录下使用 tocuh test.lua 新建一个lua格式的文件,在里面简单写一行代码:local str = 'hello world'print(str)保存该文件,然后通过下面的命令...原创 2019-12-11 14:15:29 · 2845 阅读 · 0 评论 -
lua 对表的循环删除应该注意的地方
如果用一下代码执行,会发现表并没有被清空,只是删除了1、3、5horse_race_list = {1,2,3,4,5,6}for k,v in pairs(horse_race_list) do if true then --horse_race_list[k] = nil table.remove(horse_race_li...原创 2019-11-18 21:11:10 · 723 阅读 · 0 评论 -
lua时间格式
他如果原创 2019-10-11 13:21:13 · 1234 阅读 · 0 评论 -
Lua元表中的 __index、__newindex还有rawget 和 rawset的使用
Lua元表中的 __index、__newindex还有rawget 和 rawset的使用Lua语言的元表(Metatable),就是允许用户重新定义表(table)的一些基本操作,这里只介绍元表的 __index 和 __newindex 方法。创建一个元表很简单,列如:(1) local Animal = metatable({},{}) 即可创建一个元表;(2) local ...原创 2019-09-20 14:24:43 · 603 阅读 · 1 评论 -
Lua的模块分析
Lua的模块分析、Lua模块隔离、Lua模块抽取Lua支持模块化编程,可以抽取出共有的功能模块,减少代码重复性,降低耦合度。Lua的模块由全局变量或者私有变量、函数构成,被封装在一张表里面,然后需要将这张表返回。例子base.lua 文件--base.lua 模块--添加local的局部变量都是本模块中有效,其他引用模块不能直接调用local a=0local Add = f...原创 2019-09-17 17:45:29 · 286 阅读 · 0 评论 -
Lua表的引用特征
Lua表的引用特征、Lua表的赋值、Lua表的移除local table_a = {'A','B','C'}local table_b = table_atable.insert(table_b,'D')table.insert(table_a,'E')table_a = nilfor k,v in pairs(table_b) do print('k=',k,' v=',v)...原创 2019-09-17 16:57:31 · 278 阅读 · 0 评论 -
Lua协程分析第一篇
Lua携程的创建、运行、挂起 。1、Lua携程的创建使用 handle_co = corountine.create(mainfun),输入参数是主函数地址,返回参数是对应主函数的携程句柄。2、使用coroutine.yield()挂起运行中的主函数,此时的携程状态是 suspend。3、使用coroutine.status(handle_co ) 查看指定携程的状态:suspended(挂...原创 2019-09-12 13:43:00 · 317 阅读 · 0 评论 -
Lua 异常捕获
Lua 异常处理,Lua异常处理有 pcall 和 xpcall ,两个接口都能终止主函数的执行,区别是 xpcall 可以放进一个错误处理函数,当xpcall执行主函数出错时,通过错误处理函数将出错的详细信息打印出来。简单的说 pcall 只是终止了主函数的执行,没有打印出错的详细信息,xpcall 不仅可以终止主函数的执行,还能通过指定的错误接口来处理出错的信息。A、下面是pcall调用主函...原创 2019-09-11 20:50:48 · 3307 阅读 · 0 评论