Раздел: Стандартные функции Паскаля

Функция Eof

Основы программирования 2.0 Основы программирования
Каждый профессионал когда-то был чайником. Наверняка вам знакомо состояние, когда “не знаешь как начать думать, чтобы до такого додуматься”. Наверняка вы сталкивались с ситуацией, когда вы просто не знаете, с чего начать. Эта книга ориентирована как раз на таких людей, кто хотел бы стать программистом, но совершенно не знает, как начать этот путь. Подробнее...

Функция Eof в Паскале проверяет конец файла. Синтаксис:

 
function Eof(var F : file) : boolean;

function Eof(var T : text) : boolean;

function Eof : boolean;

С помощью функции Eof можно определить конец файла, или, например, таблицы базы данных.

Функция Eof возвращает TRUE, если файловый указатель достиг конца файла или если файл пуст. Во всех остальных случаях Eof возвращает FALSE. Если файл F не указан, то используется стандартный ввод.

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

В зависимости от состояния переключателя {$I} при наличии ошибки может быть сгенерирована ошибка времени выполнения. В состоянии {$I-} используйте функцию IOResult для проверки ошибок.

Как проверить конец файла

Ниже приведён пример программы, где используется функция Eof для проверки конца файла.

program eoffunc;

var i, x   : WORD;
    FR, FW : file of WORD;

//*******************************************************************
// ОСНОВНАЯ ПРОГРАММА
//*******************************************************************
begin
  Assign(FW, 'fw.dat');
  Assign(FR, 'fr.dat');

  //Создать файл 'fr.dat' и записать в него данные
  Rewrite(FR);
  for i := 1 to 32 do
    Write(FR, i);
  Close(FR);

  Reset(FR);
  Rewrite(FW);   //Создать файл 'fw.dat'

  //Скопировать данные из 'fr.dat' в 'fw.dat'
  while not Eof(FR) do
    begin
      Read(FR, x);
      Write(FW, x);
    end;

  Close(FR);
  Close(FW);

  WriteLn('Then end. Press ENTER...');
  ReadLn;
end.

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


Как стать программистом 2.0 Как стать программистом 2.0

Эта книга для тех, кто хочет стать программистом. На самом деле хочет, а не просто мечтает. И хочет именно стать программистом с большой буквы, а не просто научиться кулебякать какие-то примитивные программки… Подробнее...
Помощь в технических вопросах Помощь в технических вопросах

Помощь студентам. Курсовые, дипломы, чертежи (КОМПАС), задачи по программированию: Pascal/Delphi/Lazarus; С/С++; Ассемблер; языки программирования ПЛК; JavaScript; VBScript; Fortran; Python и др. Разработка (доработка) ПО ПЛК (предпочтение - ОВЕН, CoDeSys 2 и 3), а также программирование панелей оператора, программируемых реле и других приборов систем автоматизации. Подробнее...

Инфо-МАСТЕР ®
Все права защищены ©
e-mail: mail@info-master.su

Яндекс.Метрика