lua中for语句的问题

for i=1,10 do
   print(i)
end

max=i
print(max)

--结果为:1 2 3 4 5 6 7 8 9 10 nil
--为什么i默认加1?这是lua的固定规则?
--最后max为什么是nil值?赋给max的i是全局变量,for里面的是局部变量?

阅读 7.2k
1 个回答
for i = start, limit, step do
    -- do stuff here
end

其中, start是起始值, limit是结束值, step是步进(可省, 默认是1).
ifor循环的local变量, for循环之后i不存在.

官方文档: http://www.lua.org/manual/5.2/manual.html#3.3.5

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进