Для чего по окончании работы с файлом принято выполнять операцию закрытия close файла

Обновлено: 03.07.2024

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

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

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

Для обращения к записям файла на внешнем носителе используется понятие логического файла. Логический файл или файл в программе – это совокупность данных, состоящая из логических записей, объединенных общим назначением.

Для связи файла в программе и файла на внешнем носителе используется процедура ASSIGN , где указывается имя файла в программе и имя файла на внешнем носителе.

Число записей файла произвольно, но в каждый момент времени доступна только одна запись. Длиной файла называют количество записанных компонент. Файл, не содержащий записей, называется пустым.

Каждая переменная файлового типа должна быть описана в разделе описания переменных var . Не допускается использование таких переменных в выражениях и операторах присваивания. Тип компонент файла может быть любым кроме файла.

В Турбо Паскале предварительно определен следующий стандартный тип:

TYPE TEXT = FILE OF CHAR;

В системе программирования Паскаль различаются 3 вида файлов:

· файлы с типом записей (типизированные файлы);

· текстовые файлы со строками неопределенной длины;

· файлы без типа для передачи данных блоками записей.

При работе с файлами необходимо придерживаться следующих общих правил:

· все имена файлов могут быть указаны в заголовке программы;

· текстовые файлы должны быть описаны с типом TEXT ;

· каждый файл в программе должен быть закреплен за конкретным файлом на носителе процедурой ASSIGN ;

· открытие существующего файла для чтения или дозаписи производится процедурой RESET , открытие создаваемого файла для записи – процедурой REWRITE ;

· при окончании работы с файлом он должен быть закрыт процедурой CLOSE .

ASSIGN (< имя файла>,<имя файла на носителе>) – процедура устанавливает связь между именем файловой переменной и именем файла на носителе. Здесь <имя файла> это файловая переменная, т.е. правильный идентификатор, объявленный в программе как переменная файлового типа. <Имя файла на носителе> – текстовое выражение, содержащее имя файла или имя логического устройства. Перед именем файла на носителе может ставиться путь к файлу – имя диска и(или) имя текущего каталога и имена каталогов вышестоящих уровней.

RESET (< имя файла>) – процедура открытия существующего файла для чтения при последовательном доступе и для чтения и записи при прямом доступе. Указатель файла при этом устанавливается на первую запись (с 0 номером).

REWRITE (< имя файла>) – процедура открытия создаваемого файла для записи. Если файл с таким именем уже существовал, то он стирается. Указатель файла устанавливается на первую запись.

READ (<имя файла>, <переменные>) – процедура чтения очередных компонент файла в переменные, тип которых должен совпадать с типом компонент файла. Указатель файла при этом передвигается на количество прочитанных компонент.

WRITE (<имя файла>, <переменные>) – процедура записи содержимого переменных в файл согласно положению указателя. Указатель автоматически сдвигается на число записанных компонент.

SEEK (< имя файла>, <номер компоненты>) – процедура установки текущего указателя для чтения или записи требуемой компоненты файла. Используется для организации прямого доступа к записям файла.

CLOSE (< имя файла>) – процедура закрытия файла. Обязательно должна использоваться после создания файла, иначе может произойти потеря данных.

ERASE (< имя файла>) – процедура уничтожения файла. Открытый файл прежде должен быть закрыт.

RENAME (< старое имя файла >, <новое имя файла >) – процедура для переименования файла. Используется после закрытия файла.

IORESULT – функция возврата условного признака последней операции ввода-вывода. Если операция завершилась успешно, функция возвращает нуль. Функция становится доступной только при отключенном автоконтроле ошибок ввода-вывода. Директива компилятора отключает, а – включает автоконтроль ошибок. Если автоконтроль отключен и операция ввода-вывода привела к возникновению ошибки, устанавливается флаг ошибки и все последующие обращения к вводу-выводу блокируются, пока не будет вызвана функция IORESULT .

FILEPOS (< имя файла>) – функция определения номера текущей записи файла.

FILESIZE (< имя файла>) – функция определения общего количества записей файла.

EOF (< имя файла>) – функция определения признака конца файла. Получает значение TRUE при чтении последней записи файла.

EOLN (< имя файла>) – функция обнаружения конца строки в текстовом файле. Имеет значение TRUE , если найден конец строки.

Файл с типом (типизированный файл) состоит из последовательности записей одинаковой длины и одинакового внутреннего формата. Записи следуют непрерывно друг за другом. Первые 4 байта первого сектора файла содержат количество и длину записи. К файлам с такой организацией можно обращаться последовательно и выборочно (с прямым доступом).

При последовательном доступе записи располагаются на внешнем носителе последовательно в порядке их поступления, т.е. чтение или запись I +1 компоненты возможно только после I –ой компоненты.

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

Общий вид описания типизированного файла:

TYPE < идентификатор типа >= FILE OF < тип компонент >;

1) TYPE T = FILE OF REAL;

2) VAR F: FILE OF REAL;

3) TYPE ST= RECORD

VAR DAN: FILE OF ST;

В первом варианте тип файла описан в разделе описания типов, а затем в разделе описания переменных файловая переменная получает этот тип, во втором варианте тип предварительно не описывается. В третьем варианте предварительно описывается тип записи файла, а в разделе описания переменных этот тип используется для указания типа отдельной записи.

Процедуры чтения и записи для файлов с типом READ и WRITE . Кроме того, используются процедуры и функции ASSIGN , RESET , REWRITE , SEEK , CLOSE , FILEPOS , FILESIZE , EOF . Процедура TRUNCATE обрезает файл на заданной файловой позиции.

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

Файловая система ОС должна предоставлять пользователям набор операций для работы с файлами, оформленный в виде системных вызовов. В различных ОС имеются различные наборы файловых операций. Наиболее часто встречающимися системными вызовами для работы с файлами являются [13, 17]:

  1. Create (создание). Файл создается без данных. Этот системный вызов объявляет о появлении нового файла и позволяет установить некоторые его атрибуты;
  2. Delete (удаление). Ненужный файл удаляется, чтобы освободить пространство на диске;
  3. Open (открытие). До использования файла его нужно открыть. Данный вызов позволяет прочитать атрибуты файла и список дисковых адресов для быстрого доступа к содержимому файла;
  4. Close (закрытие). После завершения операций с файлом его атрибуты и дисковые адреса не нужны. Файл следует закрыть, чтобы освободить пространство во внутренней таблице;
  5. Read (чтение). Файл читается с текущей позиции. Процесс, работающий с файлом, должен указать (открыть) буфер и количество читаемых данных;
  6. Write (запись). Данные записываются в файл в текущую позицию. Если она находится в конце файла, его размер автоматически увеличивается. В противном случае запись производится поверх существующих данных;
  7. Append (добавление). Это усеченная форма предыдущего вызова. Данные добавляются в конец файла;
  8. Seek (поиск). Данный системный вызов устанавливает файловый указатель в определенную позицию;
  9. Get attributes (получение атрибутов). Процессам для работы с файлами бывает необходимо получить их атрибуты;
  10. Set attributes (установка атрибутов). Этот вызов позволяет установить необходимые атрибуты файлу после его создания;
  11. Rename (переименование). Этот системный вызов позволяет изменить имя файла. Однако такое действие можно выполнить копированием файла. Поэтому данный системный вызов не является необходимым;
  12. Execute (выполнить). Используя этот системный вызов, файл можно запустить на выполнение.

Рассмотрим примеры файловых операций в ОС Windows 2000 и UNIX . Как и в других ОС, в Windows 2000 есть свой набор системных вызовов, которые она может выполнять. Однако корпорация Microsoft никогда не публиковала список системных вызовов Windows , кроме того, она постоянно меняет их от одного выпуска к другому [17]. Вместо этого Microsoft определила набор функциональных вызовов, называемый Win 32 API ( Win 32 Application Programming Interface ). Эти вызовы опубликованы и полностью документированы. Они представляют собой библиотечные процедуры, которые либо обращаются к системным вызовам, чтобы выполнить требуемую работу, либо выполняют ее прямо в пространстве пользователя.

Философия Win 32 API заключается в предоставлении всеобъемлющего интерфейса, с возможностью выполнить одно и то же требование несколькими (тремя-четырьмя) способами. В ОС UNIX все системные вызовы формируют минимальный интерфейс : удаление даже одного из них приведет к снижению функциональности ОС.

Многие вызовы API создают объекты ядра того или иного типа (файлы, процессы, потоки, каналы и т.д.). Каждый вызов, создающий объект , возвращает вызывающему процессу результат, называемый дескриптором (небольшое целое число ). Дескриптор используется впоследствии для выполнения операций с объектами. Он не может быть передан другому процессу и использован им. Однако при определенных обстоятельствах дескриптор может быть дублирован и передан другому процессу защищенным способом, что предоставляет второму процессу контролируемый доступ к объекту, принадлежащему первому процессу. С каждым объектом ассоциирован дескриптор безопасности, описывающий, кто и какие действия может, а какие не может выполнять с данным объектом.

Основные функции Win 32 API для файлового ввода-вывода и соответствующие системные вызовы ОС UNIX приведены ниже.

Аналогично файловым операциям обстоит дело с операциями управления каталогами. Основные функции Win 32 API и системные вызовы UNIX для управления каталогами приведены ниже.

Способы выполнения файловых операций

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

  1. По символьному имени файла найти его характеристики, которые хранятся в файловой системе на диске.
  2. Скопировать характеристики в оперативную память, поскольку только в этом случае программный код может их использовать.
  3. На основании характеристик файла проверить права пользователя на выполнение запрошенной операции.
  4. Очисть область памяти, отведенную под временное хранение характеристик файла.

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

ОС может выполнить последовательность действий над файлами двумя способами (см. рис. рис. 7.22).

  1. Для каждой операции выполняются как универсальные, так и уникальные действия. Такая схема иногда называется схемой без заполнения состояния операции ( stateless ).
  2. Все универсальные действия выполняются в начале и конце последовательности операций, а для каждой промежуточной операции выполняются только уникальные действия.

Варианты выполнения последовательности действий над файлами


Рис. 7.22. Варианты выполнения последовательности действий над файлами

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

При втором способе в ФС вводится два специальных системных вызова: open и close. Первый выполняется перед началом любой последовательности операций с файлом, а второй – после окончания работы с файлом.

Основной задачей вызова open является преобразование символьного имени файла в его уникальное числовое имя, копирование характеристик файла из дисковой области в буфер оперативной памяти и проверка прав пользователя на выполнение запрошенной операции . Вызов close освобождает буфер с характеристиками файла и делает невозможным продолжение операций с файлами без его повторного открытия.

Приведем несколько примеров системных вызовов для работы с файлами. Системный вызов create в ОС UNIX работает с двумя аргументами: символьным именем открываемого файла и режимом защиты. Так команда

создает файл abc с режимом защиты, указанным в переменной mode . Биты mode определяют круг пользователей, которые могут получить доступ к файлам, и уровень предоставляемого им доступа. Системный вызов create не только создает новый файл , но также открывает его для записи. Чтобы последующие системные вызовы могли получить доступ к файлу, успешный системный вызов create возвращает небольшое неотрицательное целое число – дескриптор файла – fd . Если системный вызов выполняется с существующим файлом, длина этого файла уменьшается до 0, а все содержимое теряется.

Чтобы прочитать данные из существующего файла или записать в него данные, файл сначала нужно открыть с помощью системного вызова open с двумя аргументами: символьным именем файла и режимом открытия файла (для записи, чтения или того т другого), например

Для ввода-вывода данных с помощью стандартных потоков в библиотеке Си определены функции:

  • getchar ( )/putchar ( ) – ввод-вывод отдельного символа;
  • gets ( )/ puts ( ) – ввод-вывод строки;
  • scanf ( )/ printf ( ) – ввод-вывод в режиме форматирования данных.

Процесс в любое время может организовать ввод данных из стандартного файла ввода, выполнить символьный вызов:

Аналогично организуется вывод в стандартный файл вывода

При работе в Windows 2000 с помощью функции CreateFile можно создать файл и получить дескриптор к нему. Эту же функцию следует применять и для открытия уже существующего файла, так как в Win 32 API нет специальной функции File Open . Параметры функций, как правило, многочисленны, например, функция CreateFile имеет семь параметров:

По окончании работы с файлом его следует закрыть с помощью функции close(). В ряде случаев, например в программе, показанной в листинге Б.1, нет необходимости вызывать данную функцию явно, так как ОС Linux автоматически закрывает все открытые файлы по завершении программы. Естественно, после того как файл был закрыт, обращаться к нему нельзя.

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

Linux ограничивает число файлов, которые могут быть открыты процессом в определенный момент времени. Дескрипторы открытых файлов занимают ресурсы ядра, поэтому желательно вовремя закрывать файлы, чтобы дескрипторы удалялись из системных таблиц. Обычно процессам назначается лимит в 1024 дескриптора. Изменить это значение позволяет системный вызов setrlimit() (см. раздел 8.5, "Функции getrlimit() и setrlimit(): лимиты ресурсов").

Установка размера файла, инициализация файла и разреженные файлы

Установка размера файла, инициализация файла и разреженные файлы Функция SetEndOfFile позволяет переустановить размер файла, используя текущее значение указателя файла для определения его размера. Возможно как расширение, так и усечение файла. В случае расширения файла

11.2.2. Закрытие файлов

Закрытие файла

Закрытие файла fcloseЗакрывает файл, открытый предварительно функцией fopen().Синтаксис:int fclose(int $fp)Возвращает false, если файл закрыть не удалось (например, что-то с ним случилось или же разорвалась связь с удаленным хостом). В противном случае возвращает значение "истина".Всегда

5.12.4 Закрытие каналов

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

10.6 Закрытие соединения

10.6 Закрытие соединения Нормальное завершение соединения выполняется с помощью той же процедуры тройного рукопожатия, что и при открытии соединения. Каждая из сторон может начать закрытие соединения по следующему сценарию:A: "Я закончил работу. Данных для пересылки

12. Закрытие продаж

Закрытие файла: fclose( )

Закрытие файла: fclose( ) Наш пример показывает, как закрывать файл: fclose(in);Просто используйте функцию fclose( ). Заметим, что аргументом ее является in, указатель на файл, а не test, имя файла. Для программы, более серьезной, чем эта, следовало бы посмотреть, успешно ли закрыт файл.

Б.1.2. Закрытие файла

Б.1.2. Закрытие файла По окончании работы с файлом его следует закрыть с помощью функции close(). В ряде случаев, например в программе, показанной в листинге Б.1, нет необходимости вызывать данную функцию явно, так как ОС Linux автоматически закрывает все открытые файлы по

Закрытие потоков

Закрытие потоков Функции fclose и fcloseall закрывают поток или потоки. Функция fclose закрывает один заданный поток, fcloseall — все потоки, кроме потоков stdin, stdout, stderr, stdaux, stdprn.Если программа не выполняет закрытия потоков, потоки автоматически закрываются, когда программа завершается

Закрытие файлов

Закрытие файлов Функция close закрывает открытые файлы. Открытые файлы также автоматически закрываются при неаварийном завершении

Закрытие процесса

Закрытие файлов

Закрытие файлов После того, как вы поработали с файлом, его надо закрыть. Класс CFile имеет для этого специальный метод Close:virtual void Close() throw(CFileException);Метод закрывает файл. Если вы создали объект класса CFile и открыли файл, а затем объект удаляется, то связанный с ним файл

Закрытие PGP диска.

Закрытие PGP диска. Закройте все программы и файлы, имеющиеся на диске PGP, т.к. невозможно закрыть диск, если файлы на этом диске до сих пор еще открыты. Теперь зайдите в мой компьютер выделите мышкой диск PGP, нажмите на правую кнопку мышки и выберите команду &lt;unmount&gt; в

Закрытие окна

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

Процедура close(f), где f - имя файловой переменной, закрывает файл, который ранее был открыт процедурами reset, rewrite. Именно ее следует использовать при закрытии файла, в который была записана информация. Дело в том, что writе не обращается непосредственно к диску, а пишет информацию в специальный участок памяти, называемый буфером файла. После того как буфер заполнится, вся информация из него вносится в файл. При выполнении операции close сначала происходит запись буфера файла на диск, и только потом файл закрывается. Если его не закрыть вручную, то это произойдет автоматически при завершении работы программы, однако пропадет информация, хранимая в буфере файла.

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

Процедура rename.

Переименование файла, связанного с файловой переменной f, осуществляется в то время, когда он закрыт, при помощи процедуры rename (f, s), где f - файловая переменная, s - новое имя файла (строковая переменная).

Процедура erase.

Удаление файла, связанного с переменной f, выполняется посредством процедуры erase(f), в которой также является именем файловой переменной. Для корректного выполнения этой операции файл должен быть закрыт.

Функция eof .

Функция eof (f) (end of file), где f- имя файловой переменной, принимает значение «истина» (true), если достигнут конец файла, иначе - «ложь» (false).

Процедуры write, read.

Для чтения информации из файла, связанного с файловой переменной f, можно воспользоваться стандартными операторами чтения следующей структуры:

read (f, x1, x2, …, xn);

read (f, x);

Процедура read не проверяет, достигнут ли конец файла. За этим нужно следить с помощью функции eof.

Для записи в файл можно применять стандартные операторы записи следующей структуры:

write (f, x1, x2, …, xn);

write (f, x);

Операторы последовательно записывают в файл значения переменных. Типы файла и переменных должны совпадать.

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

1. Описать файловую переменную.

2. Связать ее с физическим файлом (assign).

3. Открыть файл для записи (rewrite).

4. Внести необходимую информацию в файл (write).

5. Обязательно закрыть файл (close).

Для выполнения считывания информации из файла надо:

1. Описать файловую переменную.

2. Связать ее с физическим файлом.

3. Открыть файл для чтения.

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

Пример 1. Записать n действительных чисел в файл.

program abc;

Var

f : file of real;

i, n : integer;

Begin

assign (f, ‘ d: \tp\ abc.dat’);

rewrite(f);

read(n);

for i : =1 to n do

Begin

write (‘a=’);

read (a);

write (f,a)

close (f)

End.

Пример 2. На диске D в каталоге TP находится файл вещественных чисел. Необходимо распечатать его содержимое и вычислить количество компонентов файла.

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

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

Текстовые файлы – это файлы, содержащие символы, разделенные на строки. Причем в конце каждой строки стоит символ конца строки.

Общая последовательность действий при работе с файлами в языке программирования Паскаль:

  1. описать переменную файлового типа;
  2. связать ее с конкретным физическим файлом процедурой Assign;
  3. открыть файл для чтения процедурой ReSet или для записи процедурой ReWrite;
  4. выполнить чтение или запись информации;
  5. по окончании работы с файлом закрыть файл процедурой Close.

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

С текстовым файлом на диске в программе должна быть связана файловая переменная, которая описывается с указанием стандартного типа Text:

Связь переменной файлового типа с конкретным внешним файлом

Для установления связи между файловой переменной и именем файла, присваиваемого операционной системой, имеется стандартная процедура Assign.

Assign (<имя файловой переменной >, <имя внешнего файла>);

Чтение из файла

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

Для чтения файла в программе необходимо выполнить следующие действия:

Открыть файл для чтения:

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

Прочитать данные файла в программу с помощью процедуры Read или Readln .

Процедура Read последовательно считывает все элементы строки:

Read(<имя файловой переменной >,<элемент>)

Процедура Readln – считывает элемент из текущей строки и переходит на следующую строку (независимо от того, достигнут конец строки или нет):

Readln(<имя файловой переменной >,<элемент>)

Если не указывать второй параметр, то произойдет переход в начало следующей строки без ввода данных:

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

Закрытие файла

После завершения работы с файлом, его нужно закрыть и «освободить» файловую переменную . Это делается с помощью процедуры Сlose.

Общий вид оператора:

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

Общая форма чтения файла имеет вид:

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

Read(<имя файловой переменной >, <элемент>);

Close(<имя файловой переменной >);

Многоточием отмечено наличие других операторов в программе.

Признак конца файла

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

Общий вид функции:

Для определения конца файла используется оператор цикла, например, (пока не достигнут конец файла …):

While Not EOF (<имя файловой переменной >) Do …

Запись в файл

Под записью файла понимается вывод результатов программы из оперативной памяти на диск, т.е. создание нового файла на внешнем устройстве.

Для записи файла в программе необходимо выполнить следующие действия:

Открыть файл для записи с помощью процедуры Rewrite:

rewrite (<имя файловой переменной>);

Записать данные в файл спомощью процедур Write или Writeln.

Процедура Write производит запись поэлементно в текущую строку:

Write (<имя файловой переменной >, <элемент>) ;

Процедура WriteLn записывает элемент и переводит указатель в начало следующей строки:

Writeln (<имя файловой переменной >,<элемент>);

Если не указывать второй параметр процедуры, то в конце данной строки ставится признак конца файла и текущий указатель перемещается на начало следующей строки:

WriteLn(<имя файловой переменной >);

После завершения работы с файлом его закрытие обязательно.

Общая форма записи файла имеет вид:

ReWrite(<имя файловой переменной >);

Write(<имя файловой переменной >,<элемент>) ;

Close(<имя файловой переменной >);

Логическая функция Eoln()

Таким образом, для анализа конкретных символов строк файла можно применить вложенный цикл типа:

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

Пусть в файле содержится следующая информация:

-32 16 0 8 7
4 5 9 13 11 -5 -8
6 -8 0 12
1 2
-1 -2 -4
-1 -2 4

Этот файл можно создать в среде Паскаль следующим образом:

  1. Создать новый файл (команда Файл-Новый).
  2. Записать все числа в строке через пробелы.
  3. Сохранить его, например, как ‘primer1.dat’.
    Для этого в диалоговом окне сохранения файла в списке Тип файла выбрать Все файлы. В поле Имя файла ввести полное имя файла (имя с расширением).

Программа будет иметь следующий вид:

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

Урок понравился? Отзывы и замечания можно оставить в форме для комментариев, расположенной в нижней части страницы.

Читайте также: