Lua奇技淫巧之三——取得程序的运行路径

WINDOWS下,想取得程序的运行路径可以这么做: arg[0]:match('.*\\')
Lua | 2022-01-25 17:15 | 阅读 669 次 | 评论 0 条

Lua奇技淫巧之二——给Lua添加switch

Lua没有switch语句,我们就给它加一个: 一、简单的switch: function switch(SwitchVal) return function(SwitchTable) local ReFunc = SwitchTable[SwitchVal] if type(ReFunc) ~= "function" then ReFunc = SwitchTable[ReFunc] or SwitchTable.default end return ReFunc and ReFunc() end end 优点是实...
Lua | 2019-08-28 17:35 | 阅读 3244 次 | 评论 0 条

如何在Lua中取得本机名和本机IP地址

local socket = require('socket') local MyHostName = socket.dns.gethostname() --本机名 local MyIP = socket.dns.toip(MyHostName) --本机IP
Lua | 2018-07-18 11:59 | 阅读 8843 次 | 评论 2 条

让lua for windows自带的SciTE更好的支持中文

lua for windows自带的那个SciTE对中文支持不怎么好,按下面的方法改一下就行了: 启动scite, 照下面的顺序点击菜单:Options, Open User Options file, 打开Sciteuser.properties code.page=936 output.code.page=936 character.set=134 font.monospace=font:宋体,size:10 font.base=font:宋体,size:10 保存,关闭
Lua | 2018-07-17 11:41 | 阅读 2112 次 | 评论 0 条

如何在Lua中执行命令行命令时捕获返回内容/不显示命令行窗口

Lua中,我们一般用os.execute()执行命令行命令,此时会显示命令行窗口,并返回系统状态码。 但我们有时需要捕获返回内容/不显示命令行窗口,则可以使用函数:io.popen(),这个函数也可以执行命令行命令,但是返回的是一个文件,同时不显示命令行窗口。 例子: local ts= io.popen('dir') local s = ts:read("*all") print(s)
Lua | 2018-05-11 10:52 | 阅读 3383 次 | 评论 2 条

【转】各种软件许可协议的区别

版权见水印
默认分类 | 2018-04-03 15:01 | 阅读 1825 次 | 评论 0 条

Lua使用luacom模块操作EXCEL之二——设置框线、颜色等

require 'luacom' local excel = luacom . CreateObject( 'Excel.Application' ) excel . Visible = true local book = excel . Workbooks:Add() local sheet = book . Worksheets( 1 ) sheet . Name = 'gty' local range = sheet:Range( 'A1:A10' ) local cell = sheet . Cells( 1 , 1 ) sheet:Range( 'D3:D6' ...
Lua | 2018-04-03 14:53 | 阅读 2931 次 | 评论 0 条

Lua使用luacom模块操作EXCEL

--导入luacom模块 require('luacom') require('lfs') --导入lfs模块用于取得当前路径,和操作EXCEL无关 local sMainPath = lfs.currentdir() --取得当前路径 --创建EXCEL对象 MyExcel = luacom.CreateObject("Excel.Application") --创建EXCEL对象 --MyExcel = luacom.CreateObject("Ket.Application") --创建WPS表格对象,新版的WPS已经兼容了MSO,就不用这...
Lua | 2018-04-03 14:45 | 阅读 9768 次 | 评论 1 条

Lua奇技淫巧之一——模拟Pascal中的with

Pascal(Delphi)、VB中都有一个with关键字,可以帮助程序员减少大量的输入、提高效率。Lua 中没有这个关键字,但我们可以利用以下方式模拟。 例: a={} setfenv(function() a=1 b=2 end,a)() 以上代码效果等于: a.a=1 a.b=2 等价于Pascal中的: with a do begin a:=1; b:=2; end; 当然,这样只能用于赋值,如果需要在a{}中写函数就不能这么写了。这时可以这样写: a=s...
Lua | 2018-03-29 12:01 | 阅读 1947 次 | 评论 0 条

欧拉筛求素数,果然非常快

看到一个求素数的题目,忽然想试试欧拉筛有多快。 题目:求一千万内素数的个数。 先看最普通的筛子:1077秒 T = os.time() --求iMaxN内的素数 local iMaxN = 10000000 --普通筛子 local iSS = {} --素数数组 local iSZ = {} --筛子 for i = 1, iMaxN do iSZ[i] = i end --过筛求出所有素数 for i = 2, math.sqrt(iMaxN) do for j = i + 1, iMaxN do if ...
Lua | 2018-03-23 16:54 | 阅读 2926 次 | 评论 0 条

用TCC在Windows下编译Lua5.3.4

最新的Lua版本是5.3.4,网上能找到的编译过的版本有这么几种: 1、Lua5.3.4源码 2、用新版MinGW-w32/w64编译的Lua5.3.4,只有exe文件,没有链接库,同时MinGW必须带上libgcc_s_dw2-1.dll这么一个库,用起来比较麻烦 3、用TCC编译并压缩过的Lua5.3.4,只有64K大,但也没链接库 因此,我想重新编译源码,生成动态/静态链接库及exe文件。因为最近在学习TCC,而TCC是是标准的C99,所以试着用TCC(0.9.27)来编译。以下默认TCC已经安装好(其实就是解压TCC到某个文...
Tiny C | 2018-03-23 15:04 | 阅读 2833 次 | 评论 1 条
浏览40486次
最新评论