我有一个可能是多种类型的变量 - 有时它是一个字符串,有时是数字,表格或bool。我试图每次都打印出变量的值:
print("v: "..v)
v
是我的变量。问题是,当我得到一个无法连接的值时,我得到了这个错误:
myscript.lua:79:尝试连接表值
我已经尝试将其更改为此,以防它设法检测是否可以打印变量:
print("v: "..(v or "<can't be printed>"))
但我在那里遇到了同样的问题。是否有某种函数可用于确定变量是否可以连接到字符串,还是更好的打印变量的方法?
答案 0 :(得分:7)
您可以将值作为单独的参数提供给print:
print("v:", v)
这会打印类似
的内容v: table: 006CE900
不一定是最有用的,但如果它仅用于调试目的,则不如崩溃。
答案 1 :(得分:5)
tostring(v)适用于所有可能的v值(包括nil)。所以写你的行:
print(“v:”.. tostring(v))
永远有效。
或者你可以查看类型(v),如果它的“字符串”打印出来,否则打印其他内容(如果那是你想要的)。