Инициализация глобальных массивов
Локальные и глобальные переменные
Доступ к элементу массива
Объявление одномерного массива
Массив, как и любая переменная программы, перед использованием должен быть объявлен в разделе объявления переменных. В общем виде объявление массива выглядит следующим образом:
имя:array[нижний_индекс..верхний_индекс] of тип
где:
имя – имя массива;
array – служебное слово языка Object Pascal, обозначающее «массив»;
нижний_индекс и верхний_индекс – целые константы, определяющие диапазон изменения индекса элементов массива и, неявно, количество элементов (размер) массива;
тип – тип элементов массива.
Примеры объявления массивов:
temper:array[1..31] of real; // массив, содержащий максимум 31 вещественное число
koef:array[0..2] of integer; // массив, содержащий максимум 3 целых числа
name:array[1..30] of string[25]; // массив, содержащий максимум 30 строк длины £25.
При объявлении массива удобно использовать именованные константы и типы. Именованная константа объявляется в разделе объявления констант, который обычно располагают перед разделом объявления переменных. Начинается раздел объявления констант словом const. После констант объявляют типы (служебное слово type).
Например, следующие три объявления описывают один и тот же массив А, состоящий не более, чем из 20 целых чисел:
a) const n_max=20;
type vect=array[1..n_max] of integer;
var A:vect;
b) type vect=array[1..20] of integer;
var A:vect;
c) A: array[1..20] of integer;
Для того чтобы в программе использовать элемент массива, надо указать имя массива и номер элемента (индекс), заключив индекс в квадратные скобки. В качестве индекса можно использовать константу или выражение целого типа, например:
name[l] := 'Шахтёр';
d := koef[1]*koef[l]-4*koef[2]*koef[1];
ShowMessage(name[n+1]);
temper[i] := StrToFloat(Editl.text) ;
Если переменная (массив,…) объявлена в процедуре обработки события, то она называется локальной. Локальная переменная известна только внутри данной процедуры. В момент запуска этой процедуры для переменной выделяется память, а в момент завершения работы процедуры память освобождается, и переменная теряет своё значение.
Если переменная объявлена внутри раздела Implementation (т.е. после словаImplementation),то она называетсяглобальнойпеременной данного модуля. Такая переменная известна во всех процедурах данного модуля. Память под эту переменную выделяется в момент запуска модуля и не освобождается до завершения модуля. Если локальная и глобальная переменные имеют одинаковые имена, то более сильным является локальное объявление.
При объявлении глобального массива (в разделе Implementation) одновременно с объявлением массива можно выполнить его инициализацию, т. е. присвоить начальные значения элементам массива. Например: