Основы языка Delphi

79b4045b

Ошибки при использовании массивов



Ошибки при использовании массивов

При использовании массивов наиболее распространенной ошибкой является выход значения индексного выражения за допустимые границы, указанные при объявлении массива.

Если в качестве индекса используется константа, и ее значение выходит за допустимые границы, то такая ошибка обнаруживается на этапе компиляции программы. Например, если в программе объявлен массив

day : array[0..6] of string[ll],

то во время компиляции программы инструкция

day [7] := 'Воскресенье';

будет помечена как ошибочная.



Если для доступа к элементу массива в качестве индекса используется переменная или выражение, то возможно возникновение ошибки (исключения) времени выполнения программы. Например, если в программе объявлен массив

tab1: array [1..N] of integer;

то инструкция

for i:=0 to N do tab1[i] := 5;

формально является верной, и ее компиляция будет успешно выполнена.

Однако во время выполнения программы, при попытке присвоить значение несуществующему нулевому элементу массива tab, на экран будет выведено сообщение об ошибке. Вид окна и текст сообщения зависит от того, откуда запущена программа.

При запуске рассматриваемой программы из Delphi возникает исключение, и сообщение имеет вид, приведенный на Рисунок 5.22.



Содержание раздела