Удаление всего списка

Пример:

C:=b;

While c<>nil do

Begin

Tmp:=c;

C:=C^.NEXT;

DISPOSE(TMP);

End;

Удаление всего списка, возможно используя процедуру Mark перед созданием списка и процедуры Release после работы со списком.

Данные процедуры следует использовать в том случае, если отсутствует возможность удаления каких-либо других структур.

Файлы ввода-вывода.

Лекция №11

Файлы ввода/вывода. Понятие физического и логического файлов. Основные операции работы с файлами. Типы файлов и общие принципы работы с ними. Буфер ввода/вывода

Файл представляет собой именную область памяти, где сосредоточены различного рода данные.

С понятием файлов также связывают логические устройства: порты ввода-вывода, печатающие устройства, консоль и т.д. Любому файлу соответствует имя, файлы содержа компоненты одного и того же типа. Длина файла ограничена размером внешней памяти.

Понятие физического и логического файла.

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

Пример описание файлов:

Var

F:text;{текстовый}

F1:file of <>{типизированный}

F2:file; {бинарный файл}

Для осуществления связи файловой переменной с физическим файлом используется процедура Assign(<файловая переменная>,<имя физического файла>);

assign(f,‘d.txt‘);

Если в процедуре assign вместо имени файла указать логическое устройство о файловая переменная буде связанна с этим устройством

Assign(f,‘LPT1‘);

Assign(f,’Com’);

После выполнения процедуры assign разрешается работа с физическим файлом, который перед работой необходимо проинициализировать – указать направление передачи файлов.

Открытие файла для чтения Reset;

Reset(<файловая переменная>).

пример

Var

F:text;

.

.

Assign(f,’a.dat’);

Reset(f);

Если файл a.dat существует, то он будет открыт для чтения, при этом файловый указатель в файле будет указывать на 1 компонент.

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

Пример использования IOresult

Var

F:text;

.

.

Assign(f,’t.txt’);

{$I-}

Reset(f);

{$i+}

if ioresult <>0 then write(‘ошибка обращения к файлу’);


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: