dofile、loadfile、loadstring

2024-08-29 16:32
文章标签 loadfile dofile loadstring

本文主要是介绍dofile、loadfile、loadstring,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

1.用法

2.区别

3.示例


1.用法

    dofile("filename")

    loadfile("filename")

    loadstring("lua statements")

2.区别

    dofile先编译,然后运行;loadfile只编译,不运行,编译之后返回一个函数,通过调用这个函数运行。

    dofile出错会抛出错误信息,loadfile和loadstring都不会抛出错误,而是返回nil+错误信息

    dofile有边界效应,loadfile和loadstring没有边界效应

3.示例

dofile

[root@bee lua]# cat lualib1.lua

i = 7

[root@bee lua]# cat dofile.lua

local i = 0dofile("lualib1.lua")print(i)

[root@bee lua]# lua dofile.lua

0

loadfile

[root@bee lua]# cat lualib2.lua

function foo()i = 8end

[root@bee lua]# cat loadfile.lua

i = 1local f = loadfile("lualib2.lua")f()foo()print("loadfile: ", i)

[root@bee lua]# lua  loadfile.lua
loadfile:       8

这篇关于dofile、loadfile、loadstring的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1118374

相关文章

Lua基础之dofile、loadfile、require的区别

loadfile 特点:只编译,不运行。 一个lua文件是作为一个代码块(chunk)存在的,其实质就是一个函数,loadfile编译代码成中间码并且返回编译后的chunk作为一个函数,而不执行代码 ,并且loadfile一旦出错不会抛出错误信息而是返回错误代号。一旦发生错误,loadfile会返回nil和错误信息,这样我们就可以自定义错误处理。 想要通过loadfile加载并执行,可

全国地级市-碳排放绩效原始dofile结果数据(含文献及原始数据)2011-2021年

地级市-碳排放绩效数据的测算,采用GDP、人类发展指数、CO2排放测算碳排放绩效,基于《中国城市统计年鉴》中的数据,经过线性插值和ARIMA方法填补缺失,跨度2011年至2021年。该数据集详细记录了地级市的总碳排放量,但需注意,2008年以前的常住人口和城市化率数据缺失,1999年以前的总碳排放数据亦缺失。此外,对2013年以前的农村人均可支配收入数据也进行了线性插值处理,数据越往前,插补的数据

2009-2022年商业银行竞争度数据(勒纳指数)(含原始数据和计算代码 dofile+结果)

2009-2022年商业银行竞争度数据(勒纳指数)(含原始数据和计算代码 dofile+结果) 1、时间:2009-2022年 2、来源:整理自wind 3、指标:证券代码、证券简称、上市日期、年份、资产总计、利息支出、员工总数、固定资产、存款总额、职工薪酬、营业支出、营业收入、扣除人员开支后的营业支出、勒纳指数 4、数据包括原始数据、计算代码和计算结果 5、指标解释: 勒纳指数也称为

lua require dofile loadfile区别

1.dofile与loadfile dofile当作Lua运行代码的chunk的一种原始的操作。dofile实际上是一个辅助的函数。真正完成功能的函数是loadfile;与dofile不同的是loadfile编译代码成中间码并且返回编译后的chunk作为一个函数,而不执行代码;另外loadfile不会抛出错误信息而是返回错误代。我们可以这样定义dofile: function dofile

Goby 漏洞发布|Honeywell PM43 loadfile.lp 文件命令执行漏洞(CVE-2023-3710)

漏洞名称:Honeywell PM43 loadfile.lp 文件命令执行漏洞(CVE-2023-3710) English Name:Honeywell PM43 loadfile.lp file command execution vulnerability (CVE-2023-3710) CVSS core: 9.8 影响资产数: 96 漏洞描述: Honeywell PM43

Goby 漏洞发布|深信服下一代防火墙 loadfile.php 文件读取漏洞

漏洞名称:深信服下一代防火墙 loadfile.php 文件读取漏洞 English Name: Sangfor Next Generation Firewall loadfile.php file reading vulnerability CVSS core:7.5 影响资产数:281045 漏洞描述: 深信服下一代防火墙是一款以应用安全需求出发而设计的下一代应用防火墙。深信服下一代