TURBO PASCAL

Новости           

Программы

Turbo Pascal

Игры

Документация

"Странности"

FAQ

Ссылки

Благодарности

Гостевая книга

От автора

Операции ввода-вывода

Способ контроля операций ввода-вывода зависит от способа компиляции программы. При заданной по умолчанию директиве {$I+} после каждой операции ввода-вывода контролируется её выполнение. Если будет обнаружена ошибка, выполнение программы прекратится и на консоли появится сообщение об ошибке с указанием её типа. После директивы {$I-} при обнаружении ошибки выполнение программы не прекратится, но будут отменены последующие действия по вводу-выводу до обращения к стандартной функции IOresult, которая возвращает целое число. Если результат этой функции 0, то предыдущие операции ввода-вывода выполнены правильно. В противном случае это число определяет код ошибки.

Список ошибок ввода-вывода
01 Файл не найден
02 Файл не открыт
03 Файл не открыт для чтения
04 Файл не открыт
10 Неправильное представление численного значения
20 Недопустимая операция
21 Недопустимая операция
22 Недопустимое использование процедуры Assign
90 Несоответствие размеров записей
99 Конец набора данных
F0 Ошибка при записи на диск
F1 Переполнение каталога
F2 Переполнение набора данных
FF Набор данных не найден

Пример и возможности операций ввода-вывода

Пример:

Program Delete;
Var
FileVar : file;
FileName : string [40];
Flag : boolean;
begin
Write ('FileName:='0);
Readln (FileName);
Assign (FileVar,FileName);
{$I-}
Erase (FileVar);
{$I+}
if not (Ioresult=0) then
Writeln ('File'+FileName+'did not exist');
end.

С помощью данной программы будет удалён набор данных, имя которого будет указано с консоли.

Если указано имя несуществующего набора данных, то будет выведено сообщение, что этот набор данных не существует.

Если из программы удалить директивы компилятора, а удаляемый набор данных не существует, то выполнение программы будет прекращено из-за ошибки операции Erase, относящейся к несуществующему набору данных.

 Содержание

На главную страницу
(с)Все права защищены

По всем интересующим вопросам прошу писать на электронный адрес

    Rambler's Top100 PROext: Top 1000
    Rambler's Top100 Яндекс цитирования
Hosted by uCoz