[英]Why is Lua only printing the first word in a string?
我正在 Lua 中編寫一個發送消息的簡單程序,但由於某種原因,它只打印字符串中的第一個單詞(例如:'Hello World:' 打印'Hello')這是到目前為止的所有代碼:
local msg = (...)
print('Message:',msg)
我對 Lua 很陌生,大約一周前開始。
當你調用一個程序時
lua some_program.lua foo bar baz
那么程序將有三個單獨的字符串 arguments:
local a, b, c = ...
print(a) -- foo
print(b) -- bar
print(c) -- baz
所以在你的情況下, (...)
只給你第一個論點。
go 關於這個有兩種方法:
您可以通過引用它來確保僅使用一個長字符串參數調用程序:
lua some_program.lua "foo bar baz"
或者你可以把你通過的所有 arguments ...
連接起來。 這很容易使用table.concat
完成:
local msg = table.concat({...}, " ")
print("Message:", msg)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.