2016-09-21 59 views
0

下面for循环在Lua 5.1中正常工作,但在Lua 5.3.1中崩溃。经过相当多的搜索,但没有任何运气。 Pairs是一张表。For循环在Lua 5.1中正常工作,但在Lua中崩溃5.3.1

num_pairs = #Pairs/2 

for index = num_pairs, 1, -1 do 
    startIndex = Pairs[2 * index - 1] 
    endIndex = Pairs[2 * index] 

    for index = startIndex, endIndex do 

我得到的错误信息是:

\ '为\' 限制必须在这条线的数”:

for index = startIndex, endIndex do 

对的示例: {1,2,4,8,9,11} 表对的元素个数是偶数。

我在Windows上运行Lua 5.1.4,而在Linux上运行5.3.1。

+4

显示重现问题的“Pair”示例。 –

+0

我没有得到任何失败在Lua 5.3.1上运行(关闭两个循环并将'Pair'重命名为'Pairs')。你能展示一个完整的脚本吗?你在运行什么操作系统?你是自己编译Lua解释器还是从某处下载? –

+0

在Windows Lua 5.3.3上测试。一切正常。 – moteus

回答

0

我没有看到你的代码中最重要的部分,但是如果moteus和Paul说你的程序有效,那么Pairs[2 * index]就是数字以外的东西。发布更多的代码,我们会尽力帮助你解决它。

+0

嗨,Joel谢谢。事实证明,我使用的是不支持除法的Lua 5.3.1的修剪版本,导致了错误。这个问题可以关闭。 –