lua 基本函数dofile loadfile loadstring

原文地址http://www.daileinote.com/computer/lua/08

dofile([filename])

如果提供了filename则打开读取里面内容并以 代码块方式执行,没提供则从标准输入stdin读取并执行。
如果报错,错误会上传到到调用者(运行在非保护模式)

例子

新建aa.lua

--aa.lua
url = 'www.freecls.com'
local name = '沧浪水'

执行代码

dofile('aa.lua')
print(url)
print(name)

--结果
--[[
www.freecls.com
nil
--]]
--可以看出局部变量在外部不可见

 

loadfile([filename])

如果提供了filename则打开读取里面内容并返回函数,没提供则从标准输入stdin读取并返回函数。

例子

还是加载上面的aa.lua

local func = loadfile('aa.lua')
print(url,name)
--nil	nil

func()
print(url,name)
--www.freecls.com	nil

总结: 从例子可以看出跟dofile唯一的区别就是loadfile以函数形式返回并需要手动执行

 

loadstring(str)

str为代码块字符串,跟loadfile很像,只是它以字符串形式来加载

例子

local func = loadstring("url = 'www.freecls.com'\nlocal name='沧浪水'")
print(url,name)
--nil	nil

func()
print(url,name)
--www.freecls.com	nil

 

总结

1.本文对lua加载外部代码做简单的介绍,如果有疑问可以给我留言
2.lua的版本为5.1,运行环境centos7 64位
3.原文地址http://www.daileinote.com/computer/lua/08

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值