Объявление массива
Массив, как и
любая переменная программы, перед использованием должен быть объявлен в разделе
объявления переменных. В общем виде инструкция объявления массива выглядит
следующим образом:
Имя: array
[нижний_индекс. .верхний_индекс] of тип
где:
- имя — имя
массива;
- array — зарезервированное
слово языка Delphi, обозначающее, что объявляемое имя является именем
массива;
- нижний_индекс и
верхний_и«декс — целые константы, определяющие диапазон изменения индекса
элементов массива и, неявно, количество элементов (размер) массива;
- тип — тип элементов массива.
Примеры
объявления массивов:
temper:array[1..31] of real;
коef:array[0. .2] of integer;
name:array[1..30]
of string[25];
При объявлении
массива удобно использовать именованные константы. Именованная константа
объявляется в разделе объявления констант, который обычно располагают перед
разделом объявления переменных. Начинается раздел объявления констант словом
const. В инструкции объявления именованной константы указывают имя константы и
ее значение, которое отделяется от имени символом "равно". Например, чтобы
объявить именованную константу нв, значение которой равно 10, в раздел const
надо записать инструкцию: нв=ю. После объявления
именованной константы ее можно использовать в программе как обычную числовую или
символьную константу. Ниже в качестве примера приведено объявление массива
названий команд-участниц чемпионата по футболу, в котором используются
именованные константы.
const
NT = 18; // число команд
SN = 25; // предельная
длина названия команды var
team: array[1..NT] of
string[SN];
Для того чтобы
в программе использовать элемент массива, надо указать имя массива и номер
элемента (индекс), заключив индекс в квадратные скобки. В качестве индекса можно
использовать константу или выражение целого типа, например:
team [ 1] :=
'Зенит';
d :=
koef[l]*koef[l]-4*koef[2]*koef[1];
ShowMessage(name[n+1]);
temper[i] :=
StrToFloat(Edit1.text);
Если массив не
является локальным, т. е. объявлен не в процедуре обработки события, а в разделе
переменных модуля, то одновременно с объявлением массива можно выполнить его
инициализацию, т. е. присвоить начальные значения элементам массива. Инструкция
объявления массива с одновременной его инициализацией в общем виде выглядит
так:
Имя:array
[нижний_индекс..верхний_индекс] of тип = (список);
где список —
разделенные запятыми значения элементов массива. Например:
a: array[10] of integer =
(0,0,0,0,0,0,0,0,0,0);
Team: array[1..5] of
String[10]=
('Зенит','Динамо','Спартак','Ротор','СКА');
Обратите
внимание, что количество элементов списка инициализации должно соответствовать
размерности массива. Если это будет не так, то компилятор выведет сообщения об
ошибке: Number of elements differs from declaration (количество элементов не
соответствует указанному в объявлении).
При попытке
инициализировать локальный массив компилятор выводит сообщение об ошибке: Cannot
initialize local variables (локальная переменная не может быть
инициализирована). Локальный массив можно инициализировать только во время
работы программы, например, так:
for i := 1
to 10 do
a[i]:= 0;