Описание файлового типа

Одной из наиболее фундаментальных структур данных, используемых в Tuibo Pascal, являются файлы. Любой файл имеет три характерные особенности. Во-первых, у него есть имя, что даст возможность программе работать одновременно с несколькими файлами. Во-вторых, он содержит компоненты одного тиля. Таким компонентом может быть любой тип Turbo Pascal, кроме файлового. Например, допускается файл записей или файл строк, но нельзя создать «файл файлов». В-третьих, длина создаваемого файла никак не оговаривается при его объявлении и ограничивается только емкостью устройств внешней памяти.

В большинстве случаев файлы состоят из текстовых строк, или записей. Для описания файла используется словосочетание file of.

Для доступа к файлу описывается специальная файловая переменная, которая считается представителем в Pascal-программе (чаще всего ее обозначают как F). Если файл состоит из записей, дополнительно описи переменная для доступа к полям записи (обозначим ее R).

Формат:

Type <имя типа> = <тип компонентов»;

Var

: file of <имя типа>;

: <имя типа>;

Файл можно представить как потенциально бесконечный список значений одного и того же (базового) типа. Все элементы файла считаются пронумерованными, начальный элемент имеет нулевой номер.

В любой момент времени программе доступен только один элемент файла, на который ссылается текущий указатель (указатель обработки). Часто позицию размещения доступного элемента называют текущей позицией.

Как правило, все действия с файлом (чтение из файла, запись и файл) производятся поэлементно, причем в этих действиях участвует тот элемент файла, который обозначается текущим указателем. В результате совершения операций текущий указатель может перемещаться к тому или иному элементу файла.

По способу доступа к элементам различают файлы последовательного и прямого доступа. Файлом последовательного доступа называется файл, к элементам которого обеспечивается доступ в такой же последовательности, в какой они записывались. Файлом прямого доступа называется файл, доступ к элементам которого осуществляется по адресу элемента. Например, для поиска нужного элемента в последовательном файле необходимо, начав с нулевого элемента, перемещать указатель обработки до тех пор, пока он не будет указывать на искомый элемент, а при поиске нужного элемента в файле пряного доступа достаточно указать номер его позиции. При использовании файла последовательного доступа нельзя одновременно читать данные из файла и записывать их в файл, так как для чтения некоторого элемента последовательного файла указатель обработки перемещается к данному элементу, а для записи нового элемента этот указатель должен находиться в конце файла.

Компилятор Turbo Pascal поддерживает три типа файлов: текстовые, типизированные и нетипизированные.

Добавить комментарий