Cтраница 2
Примечания: Параметр f представляет собой файловую переменную любого файлового типа. Внешний файл, связанный с переменной f, стирается. Ограничения: Процедура Erase не должна использоваться для открытого файла. [16]
Связь с внешними файлами осуществляется через файловые переменные, т.е. переменные файлового типа. [17]
Стандарт Турбо Паскаля вводит особый файловый тип, являющийся, по сути, обобщенным файловым типом. Мы будем называть его в дальнейшем бестиповым файлом, поскольку его обозначение состоит только из слова File без указания типа компонент. [18]
Здесь имя типа - идентификатор, который в разделе TYPE определен как FILE ( файл) из компонентов, имеющих указанный тип компонентов; имя переменной - имя переменной файлового типа; FILE ( файл) и OF ( из) - служебные слова. [19]
Файловые типы, основанные на старом синтаксисе языка Pascal, то есть file of тип, не могут поддерживаться, так как компилятор не может определить размер заданного типа на целевой платформе. [20]
Внутри подпрограммы любое упоминание формального параметра-переменной обеспечивает доступ к самому фактическому параметру. Файловые типы могут передаваться только как параметры-переменные. [21]
Для всех типов файлов минимальной единицей хранения информации в них является байт. Принципы работы с файлами едины, хотя и имеются различия в наборах команд для работы с разными файловыми типами. Для всех без исключения файлов необходимо предварительное связывание их логических обозначений ( файловых переменных) с физическими файлами. [22]
Большое значение имеет соблюдение правил соответствия типов при подстановке параметров. И, конечно, число и порядок следования параметров в вызове должен соответствовать описанию процедуры или функции. Кроме того, в Турбо Паскале существует правило, требующее, чтобы параметры, имеющие файловый тип ( или сложный тип с файловыми компонентами), были обязательно описаны как VAR-параметры. [23]
Одна из разновидностей файла - последовательный файл, который является основой процедур ввода - вывода. Этот файл представляет собой последовательность компонент с двумя видами действий: создание или просмотр файла. Создание файла осуществляется добавлением новых компонент в конец первоначального пустого файла, а просмотр осуществляется сначала по одному элементу. В обоих случаях компоненты файла обрабатываются последовательно. Файлы хранятся на внешних запоминающих устройствах ЭВМ. В любой момент времени доступен только один компонент файла, который и хранится в оперативной памяти ЭВМ. Для файловых типов данных или других типов с файловыми компонентами не доступны ни операторы присваивания, ни проверки на равенство. [24]
Типы, о которых будет рассказано в этой и в следующих главах, являются сложными типами. Сложные типы отличаются от простых тем, что переменные сложных типов имеют более чем одну компоненту. Каждая компонента сложного типа является переменной либо простого, либо сложного типа. На самом нижнем уровне компоненты сложного типа имеют простые типы, которым могут присваиваться значения и которые могут присутствовать в выражениях так же, как и простые переменные. Очень важным аспектом, связанным со сложными переменными, является способ доступа к ее компонентам. В этой главе мы рассмотрим переменные регулярного и комбинированного типов), которые позволяют нам использовать память машины более гибким образом, чем мы делали это до сих пор. В следующей главе мы изучим переменные файлового типа, которые дают возможность запоминать информацию на носителях, являющихся внешним по отношению к доступной памяти программы. Мы будем пользоваться терминами простая и сложная переменные для обозначения переменных, имеющих простые и сложные типы соответственно. [25]