Lua 初學者隨筆 一

2022-08-20 13:12:06 字數 1698 閱讀 5176

1. 關於return

function

test(a, b)

print("

hello")

return

print("

world")

end--

call the function

test(1, 2

);--[[

output

hello

world

]]

奇怪之處:

①lua關於return語句放置的位置:return用來從函式返回結果,當乙個函式自然結束結尾會的乙個預設的return。lua語法要求return只能出現在block的結尾一句(也就是說:任務chunk的最後一句,或者在end之前,或者else前,或until前),但是在本程式中竟然沒有報錯

②當執行return後,函式應該返回了,也就是說,上述程式本應該只輸出hello,然後函式就應當結束,不會再輸出world,但是本程式確實hello和world都輸出了。

③若是return後面緊跟乙個返回值,該程式就正常報錯了,符合了lua語法要求return只能出現在block的結尾一句。

function

test(a, b)

print("

hello")

return

1print("

world")

end--

call the function

test(1, 2

);--[[

error:

lua: hello.lua:4: 'end' expected (to close 'function' at line 1) near 'print'

]]

2. 關於返回不定引數

function

newtable(...)

return(...) --

error

endtb1=newtable("

a","

v","c"

)for i=1,#tb1 do

print

(i,tb1[i])

end

return(...) 由於加了括號,只能返回第乙個值,其它的值被忽略了

正確的做法是:return

3.select函式

function

printargs(...)

local num_args=select("#"

, ...)

for i=1 ,num_args do

local arg=select

(i, ...)

print

(i,arg)

endendprintargs("a

","b

",3,"

d")

ifindexis a number, returns all arguments after argument numberindex. otherwise,indexmust be the string"#", andselectreturns the total number of extra arguments it received.

4.

我是Lua初學者 2

syntax 1 if else用法比較簡單,類似於c語言,不過此處需要注意的是整個if只需要乙個end,哪怕用了多個elseif,也是乙個end.例如if op then r a b elseif op then r a b elseif op then r a b elseif op then ...

初學者談初學者學html

這是乙個段落。解釋一下就是 html 與 html 之間的文字是描述網頁。head 與 head 之間的文字是文件的元資料。title 與 之間的文字是文件的標題。body 與 body 之間的文字是可見的頁面內容,是文章的主體部分。h1 與 h1 之間的文字被顯示為乙個大標題。p 與 p 之間的文...

初學者mysql MySQL初學者使用指南

有很多朋友雖然安裝好了mysql但卻不知如何使用它。在這篇文章中我們就從連線mysql 修改密碼 增加使用者等方面來學習一些mysql的常用命令。一 連線mysql。1 例1 連線到本機上的mysql。首先在開啟dos視窗,然後進入目錄 mysqlbin,再鍵入命令mysql uroot p,回車後...