Возможно объявление таких конструкций, как массив массивов (это будет, по сути, матрица) или других структур. Подробнее массивы будут рассмотрены в разд. 7.1 «Массивы (Array) и работа с ними».
- 70 -
Другим сложным типом является множество, конструируемое специальной фразой
Set of БазовыйПеречислимыйТип.
Данные типа «множество» — это наборы значений некоего базового перечислимого типа, перечисленные через запятую в квадратных скобках. Так, если базовым считать введенный ранее перечислимый тип Test, то значение типа
Set of Test
может содержать произвольные выборки значений типа Test:
[Level0]
[Level3, Leve4]
[Level1..Level5],
и т.п., а также
[] — пустое множество.
Множество отличается от массива тем, что не надо заранее указывать количество элементов в нем, используя индексацию. Множество может расширяться или сокращаться по ходу программы. В Паскале определены операции над множествами, аналогичные математическим: объединение множеств, поиск пересечения их (взятие разности множеств), выявление подмножеств и др. Излишне говорить, что такой тип данных существенно расширяет гибкость языка. Подробно множества описываются в разд. 7.3 «Тип «множество» (Set). Операции с множествами».
Файловый тип — это «окно в мир» для программы на Турбо Паскале. Именно с помощью файловой системы осуществляется весь ввод и вывод информации программой. Этим вопросам в книге посвящена гл. 12, здесь же ограничимся общим определением файла. Файл (любого типа) — это последовательность данных, расположенных вне рабочей памяти программы (на магнитном диске, на экране, на принтере, в другом компьютере в сети ПЭВМ или где-нибудь еще). Некоторые файлы могут только выдавать информацию (например, клавиатура). Другие файлы могут только принимать ее, например, устройство печати. Напечатанный принтером лист — это зримый образ выведенного программой файла. Третьи файлы позволяют и считывать из себя информацию, и записывать ее. Примером является обычный файл на диске. Определяя файлы в программе, мы можем через них общаться с периферией ПЭВМ, и в том числе накапливать данные и впоследствии обращаться к ним.
- 71 -
Файловые типы Турбо Паскаля (Text, File of... и File) различаются только типами данных, содержащихся в конкретных файлах программы. Задавая в программе структуры данных типа «файл», мы определяем тип этих данных, но не оговариваем их количество в файле. Теоретически файл может быть бесконечной последовательностью данных; практически же на все случаи жизни в ПЭВМ найдутся ограничения, в том числе и на длину файла.