我这里有一小段代码;
for i=1,1000 do
n=math.floor(math.sin(i/10.0)*40)
s=''
for j=1,n do s=s+'-' end
print(s)
end
但它在第2行给出了一个错误:“尝试对全局'进行算术'(字符串值)”我不知道为什么会这样做,这让我很生气。
答案 0 :(得分:3)
与其他语言不同,Lua使用..
来连接字符串,而不是+
,更改
s = s + '-'
到
s = s .. '-'
答案 1 :(得分:1)
不建议使用字符串连接循环,因为它会导致二次复制(对于小字符串而言不重要)。请改为string.rep
。
for i=1,1000 do
n=math.floor(math.sin(i/10.0)*40)
print(string.rep('-',n))
end