1. 關於return
functiontest(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的結尾一句。
functiontest(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. 關於返回不定引數
functionnewtable(...)
return(...) --
error
endtb1=newtable("
a","
v","c"
)for i=1,#tb1 do
(i,tb1[i])
end
return(...) 由於加了括號,只能返回第乙個值,其它的值被忽略了
正確的做法是:return
3.select函式
functionprintargs(...)
local num_args=select("#"
, ...)
for i=1 ,num_args do
local arg=select
(i, ...)
(i,arg)
endendprintargs("a
","b
",3,"
d")
ifindex
is a number, returns all arguments after argument numberindex
. otherwise,index
must be the string"#"
, andselect
returns 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,回車後...