TURBO PASCAL |
Новости
|
Типы массивМассивы содержат фиксированное число элементов одного типа, так называемого типа элемента. На приводимой ниже синтаксической диаграмме тип элемента следует за словом of. ┌───────┐ ┌───┐ ┌───────┐ ┌───┐ ┌────┐ ┌─────┐ тип ──>│ array ├─>│ [ ├───>│ тип ├─┬─>│ ] ├─>│ of ├─>│ тип ├> массив └───────┘ └───┘ ^ │индекса│ │ └───┘ └────┘ └─────┘ │ └───────┘ │ │ ┌───┐ │ └────┤ , │<──┘ └───┘ тип ┌────────────────┐ индекса ───>│ порядковый тип ├───> └────────────────┘ В индексных типах, по одному для каждой размерности массива, указывается число элементов. Допустимыми индексными типами явля- ются все порядковые типы, за исключением длинного целого и подди- апазонов длинного целого. Массив может быть проиндексирован по каждой размерности всеми значениями соответствующего индексного типа; число элементов поэтому равно числу значений в каждом ин- дексном типе. Число размерностей не ограничено. Приведем пример типа массив: array[1..100] of Real Если тип элемента в типе массив также является массивом, то результат можно рассматривать как массив массивов или как один многомерный массив. Например, array[boolean] of array[1..100] of array[Size] of Real интерпретируется компилятором точно так же, как массив: array[boolean,1..10,Size] of Real Кроме того, можно записать выражение: packed array[1..10] of packed array[1..8] of Boolean как packed array[1..10,1..8] of Boolean Для доступа к элементам массива необходимо указать идентифи- катор массива с одним или несколькими индексами в скобках (см. раздел "Массивы, строки и индексы"). Тип массив, имеющий вид: B.Pascal 7 & Objects/LR - 47 - packed array[M..N] of Char где M меньше N, называется упакованным строковым типом (слово packed можно опустить, поскольку оно не оказывает действия в Borland Pascal). Упакованный строковый тип имеет некоторые свойс- тва, не характерные для других типов массив (см. раздел "Тождест- венные и совместимые типы" далее в этой главе). Массив вида: array[0..X] of Char где X - положительное целое число, называется массивом с нулевой базой. Массивы с нулевой базой используются для хранения строк с завершающим нулем, и, когда разрешен расширенный синтаксис (с по- мощью директивы компилятора {$X+}), символьный массив с нулевой базой совместим со значением типа PChar. Полностью эта тема об- суждается в Главе 18 "Использование строк с завершающим нулем". Параметр, описанный с помощью синтаксиса array of T, называ- ется открытым строковым параметром. Открытые строковые параметры позволяют передавать одной и той же процедуре или функции строко- вые переменные изменяющегося размера. Примечание: Открытые строковые параметры описываются в Главе 9. |
(с)Все права защищены По всем интересующим вопросам прошу писать на электронный адрес |