Lua 编程问题


lua IO
 
io.output("xxx1")  -- also be writed: local ff1 = io.output("xxx1"); 实际是以"w"模式打开文件xxx1,只是把句柄保存到全局表里
 io.write("*")
 io.close()  -- equal to [io.close(io.output())] and [io.output():close()]

io.input("xxx2")  -- also be writed: local ff2 = io.output("xxx2"); 实际是以"r"模式打开文件xxx2,只是把句柄保存到全局表里
 io.read("*")
 io.close(io.input())  -- io.input():close()

local f1 = io.open("xxx3", "w")
 
f1:close()

lua variable scope
 
lua 的变量 经过dofile require执行后,在外层依然可见;反之,外层变量在dofile和require里也是可见的

改变函数的环境

aa = 1
bb = 2
function nn()
        local _ENV = {["aa"] = 100, ["print"]=_ENV.print}
        return function () -- 此函数的环境变量变为 <span style="font-family: Arial, Helvetica, sans-serif; font-size: 12px;">{["aa"] = 100, ["print"]=_ENV.print}</span>

                print(aa) -- 100
                print(bb) -- nil
                end
end

local ff = nn()
ff()

Lua 的详细介绍:请点这里
Lua 的下载地址:请点这里

推荐阅读:

Lua 语言 15 分钟快速入门

Lua程序设计(第2版)中文 PDF

Lua程序设计(第二版)阅读笔记

NetBSD 将支持用 Lua 脚本开发内核组件

CentOS 编译安装 Lua LuaSocket

相关内容