当前位置:网站首页>lua入门案例实战1234定义函数与标准函数库功能
lua入门案例实战1234定义函数与标准函数库功能
2022-07-31 22:50:00 【海宝7号】
– Example – Functions.
函数相关的案例自定义
定义函数1-简单调用
– Define a function without parameters or return value.
案例如下
function myFirstLuaFunction()
print("My first lua function was called")
end
– Call myFirstLuaFunction.
myFirstLuaFunction()
-------- Output ------
My first lua function was called
定义函数2-带返回值
– Example – More functions.
– Define a function with a return value.
function mySecondLuaFunction()
return "string from my second function"
end
– Call function returning a value.
a=mySecondLuaFunction("string")
print(a)
-------- Output ------
string from my second function
定义函数3-多参数返回
– Define function with multiple parameters and multiple return values.
function myFirstLuaFunctionWithMultipleReturnValues(a,b,c)
return a,b,c,"My first lua function with multiple return values", 1, true
end
a,b,c,d,e,f = myFirstLuaFunctionWithMultipleReturnValues(1,2,"three")
print(a,b,c,d,e,f)
-------- Output ------
1 2 three My first lua function with multiple return values 1 true
定义函数4-全局变量与局部变量
– All variables are global in scope by default.
b=“global”
– To make local variables you must put the keyword ‘local’ in front.
function myfunc()
local b=" local variable"
a="global variable"
print(a,b)
end
调用函数
myfunc()
print(a,b)
-------- Output ------
global variable local variable
global variable global
定义函数5-格式化输出
function printf(fmt, ...)
io.write(string.format(fmt, ...))
end
printf("Hello %s from %s on %s\n",
os.getenv"USER" or "there", _VERSION, os.date())
-------- Output ------
Hello there from Lua 5.1 on 07/30/22 14:34:25
定义注释多行
-- Example 31 --[[
Standard Libraries
Lua has standard built-in libraries for common operations in
math, string, table, input/output & operating system facilities.
External Libraries
Numerous other libraries have been created: sockets, XML, profiling,
logging, unittests, GUI toolkits, web frameworks, and many more.
]]
-------- Output ------
标准函数库
标准数学库
– Math functions:
– math.abs, math.acos, math.asin, math.atan, math.atan2,
– math.ceil, math.cos, math.cosh, math.deg, math.exp, math.floor,
– math.fmod, math.frexp, math.huge, math.ldexp, math.log, math.log10,
– math.max, math.min, math.modf, math.pi, math.pow, math.rad,
– math.random, math.randomseed, math.sin, math.sinh, math.sqrt,
– math.tan, math.tanh
print(math.sqrt(9), math.pi)
-------- Output ------
3 3.1415926535898
标准库string
– String functions:
– string.byte, string.char, string.dump, string.find, string.format,
– string.gfind, string.gsub, string.len, string.lower, string.match,
– string.rep, string.reverse, string.sub, string.upper
print(string.upper("lower"),string.rep("a",5),string.find("abcde", "cd"))
-------- Output ------
LOWER aaaaa 3 4
标准库table
– Table functions:
– table.concat, table.insert, table.maxn, table.remove, table.sort
a={2}
table.insert(a,3);
table.insert(a,4);
table.sort(a,function(v1,v2) return v1 > v2 end)
for i,v in ipairs(a) do print(i,v) end
-------- Output ------
1 4
2 3
3 2
标准输入输出IO
– IO functions:
– io.close , io.flush, io.input, io.lines, io.open, io.output, io.popen,
– io.read, io.stderr, io.stdin, io.stdout, io.tmpfile, io.type, io.write,
– file:close, file:flush, file:lines ,file:read,
– file:seek, file:setvbuf, file:write
print(io.open("file doesn't exist", "r"))
-------- Output ------
nil file doesn’t exist: No such file or directory 2
系统函数配置OS库
– OS functions:
– os.clock, os.date, os.difftime, os.execute, os.exit, os.getenv,
– os.remove, os.rename, os.setlocale, os.time, os.tmpname
print(os.date())
-------- Output ------
07/30/22 14:39:54
扩展库支持
– Lua has support for external modules using the ‘require’ function
– INFO: A dialog will popup but it could get hidden behind the console.
require( "iuplua" )
ml = iup.multiline
{
expand="YES",
value="Quit this multiline edit app to continue Tutorial!",
border="YES"
}
dlg = iup.dialog{ml; title="IupMultiline", size="QUARTERxQUARTER",}
dlg:show()
print("Exit GUI app to continue!")
iup.MainLoop()
-------- Output ------
failed to load & run sample code
暂未配置结束。
```css
-- Example 38 --[[
To learn more about Lua scripting see
Lua Tutorials: http://lua-users.org/wiki/TutorialDirectory
"Programming in Lua" Book: http://www.inf.puc-rio.br/~roberto/pil2/
Lua 5.1 Reference Manual:
Start/Programs/Lua/Documentation/Lua 5.1 Reference Manual
Examples: Start/Programs/Lua/Examples
]]
-------- Output ------
Press 'Enter' key for next example
边栏推荐
- [NLP] What is the memory of the model!
- SQL注入 Less46(order by后的注入+rand()布尔盲注)
- UOS统信系统 - WindTerm使用
- 「SDOI2016」征途 题解
- 基于simulink的Active anti-islanding-AFD主动反孤岛模型仿真
- BOW/DOM (top)
- Dry goods | 10 tips for MySQL add, delete, change query performance optimization
- 基于单片机GSM的防火防盗系统的设计
- GateWay implements load balancing
- Unity-LineRenderer显示一条线
猜你喜欢

How to identify fake reptiles?

基于单片机GSM的防火防盗系统的设计

一款国外开发的高质量WordPress下载站模板主题

TestCafeSummary

基于simulink的Passive anti-islanding-UVP/OVP and UFP/OFP被动反孤岛模型仿真

Go1.18 upgrade function - Fuzz test from scratch in Go language

Quick Start Tutorial for flyway

Go mode tidy reports an error go warning “all” matched no packages

《ArchSummit:时代的呐喊,技术人听得到》

MLP神经网络,GRNN神经网络,SVM神经网络以及深度学习神经网络对比识别人体健康非健康数据
随机推荐
Several methods of mysql backup table
一款国外开发的高质量WordPress下载站模板主题
iNeuOS industrial Internet operating system, equipment operation and maintenance business and "low-code" form development tools
Dry goods | 10 tips for MySQL add, delete, change query performance optimization
LevelSequence source code analysis
@JsonFormat(pattern="yyyy-MM-dd") time difference problem
22年8月推广大使额外奖励规则
SQL27 View user details of different age groups
BOW/DOM (top)
「APIO2010」巡逻 题解
ThreadLocal
A high-quality WordPress download site template theme developed abroad
ECCV 2022 Huake & ETH propose OSFormer, the first one-stage Transformer framework for camouflaging instance segmentation!The code is open source!...
flowable workflow all business concepts
Go1.18 upgrade function - Fuzz test from scratch in Go language
Unity - LineRenderer show a line
Quick Start Tutorial for flyway
Pytest first experience
Flink_CDC construction and simple use
Advanced Algebra _ Proof _ Any matrix is similar to an upper triangular matrix