【问题标题】:Pascal error with array数组的帕斯卡错误
【发布时间】:2010-05-16 16:05:22
【问题描述】:
program s;
  type info = record
       name, surname: string;
       min, sec: integer;
  end;
  arrays = array[2..50] of info;

  var A: arrays;
begin
  A[1].name := 'name';
end.

这有什么问题?它给了我范围检查错误,我不知道那是什么。

【问题讨论】:

  • 它在哪一行给你一个范围检查?
  • 顺便问一下,有人能告诉我,Nick D 是如何做出如此出色的剪辑的吗?
  • 您可以通过点击链接“edited X mins ago”查看编辑;编辑用简单的四空格缩进替换了每行周围的单个撇号。 stackoverflow.com/posts/2844424/revisions

标签: arrays pascal


【解决方案1】:

它给你一个错误,因为你正在创建一个从索引 2 到 50 的数组。

所以您可以访问的第一个元素是 2。

begin
  A[2].name := 'name';
end.

范围检查错误意味着您试图访问位于无效位置的数组(因此超出范围)。与其他语言不同,Pascal 会引发编译错误。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多