初学lua,---问题出在哪?lua:tabledemo.lua:25:--attempt to index global 'a' (a number value)源代码是这样的:a={}-- empty table-- create 1000 new entriesfor i=1,1000 do a=i*2 endprint(a[9])在editplus中运行的就出现了lua:tabledemo.l

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/29 17:10:21
初学lua,---问题出在哪?lua:tabledemo.lua:25:--attempt to index global 'a' (a number value)源代码是这样的:a={}-- empty table-- create 1000 new entriesfor i=1,1000 do a=i*2 endprint(a[9])在editplus中运行的就出现了lua:tabledemo.l

初学lua,---问题出在哪?lua:tabledemo.lua:25:--attempt to index global 'a' (a number value)源代码是这样的:a={}-- empty table-- create 1000 new entriesfor i=1,1000 do a=i*2 endprint(a[9])在editplus中运行的就出现了lua:tabledemo.l
初学lua,---问题出在哪?lua:tabledemo.lua:25:--attempt to index global 'a' (a number value)
源代码是这样的:
a={}-- empty table-- create 1000 new entries
for i=1,1000
do a=i*2
end
print(a[9])
在editplus中运行的就出现了lua:tabledemo.lua:25:--attempt to index global 'a' (a number value)错误

初学lua,---问题出在哪?lua:tabledemo.lua:25:--attempt to index global 'a' (a number value)源代码是这样的:a={}-- empty table-- create 1000 new entriesfor i=1,1000 do a=i*2 endprint(a[9])在editplus中运行的就出现了lua:tabledemo.l
首先说一下 你的排版不是很好 这样写会好点
a={}-- empty table-- create 1000 new entries
for i=1,1000 do
a=i*2
end
print(a[9])
在运行到 a=i*2这个语句的时候 你的a 就不再是table 而是一个number了
所以把 a=i*2 改成 a[i]=i*2 就好了

local a = {}
for i = 1, 1000 do
a[i] = i * 2
end
print (a[9])
写代码要规范!!