文章<Lua學習---函數定義>的'函數參數'部分,"Lua還支持變長參數。用...表示。此時訪問參數也要用...,如:"
1
2
3
4
5
6
7
8
9
10
|
local function func(...) --形參為 ... ,表示函數采用變長參數
local temp = {...} --訪問的時候也要使用 ...
local ans = table.concat(temp,
""
) --使用table.concat庫函數,對數組內容使用
" "
拼接成字符串。
print(ans)
end
func(1, 2) --傳遞了兩個參數
func(1, 2, 3, 4) --傳遞了四個參數
-->output
1 2
1 2 3 4
|
用LuaEditor編譯會報錯": error:'=' expected near ",就是因為函數體內local前的空格並不標准,及函數體賦值語句前后的空格不標准,切換到英文輸入后tab出空格即可。stackoverflow上搜到文章《stdin:1: '=' expected near '<'》,原因是print的參數應該為小括號。