程序在读取程序后停止(delphi)

时间:2015-04-12 21:18:26

标签: delphi pascal bubble-sort

我的程序停止读取更多行并在此过程之后结束程序,如“结束”。之后(但不是):

  Procedure BubbleSort;
  var i, j : integer;
  begin
    for i := 0 to count - 1 do begin
      for j := count - 1 downto i do
        if (together[j] > together[j - 1]) then
          Swap(together[j - 1], together[j]);
    end;
  end;

1 个答案:

答案 0 :(得分:5)

我猜问题是越界数组访问。您访问索引-1。通过将外部循环更改为:

来避免这种情况
for i := 1 to count - 1 do begin

我建议您启用范围检查,以便通过信息性运行时错误了解超出范围的数组访问。