Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лекционный материал по Аи ЯП.doc
Скачиваний:
2
Добавлен:
01.07.2025
Размер:
687 Кб
Скачать
☆

7.5 Константы - указатели

Единственным значением типизированной константы-указателя может быть только NIL, например:

Const

pr:Real=NIL;

Лекция № 8 Тема: Файлы

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

План:

8.1 Доступ к файлам

8.2 Имена файлов

8.3 Инициация файла

8.4 Текстовые файлы

Под файлом понимается либо именованная область внешней памяти ПК (жесткого диска, гибкой дискеты, электронного «виртуального» диска), либо логическое устройство - потенциальный источник или приемник информации.

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

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

<имя> = FILE OF <тип>;

<имя> = TEXT;

<имя> = FILE;

Здесь <имя> - имя файлового типа (правильный идентификатор);

FILE, OF - зарезервированные слова (файл, из);

TEXT - имя стандартного типа текстовых файлов;

<тип> - любой тип Турбо Паскаля, кроме файлов.

Например:

type

product = record

name:String;

code:Word;

cost:comp

end;

textSO = file of String [80] ;

var

f1:file of char;

f2:text;

f3:file;

f4:file of product;

В зависимости от способа объявления можно выделить три вида файлов:

  • типизированные файлы (задаются предложением FILE OF...);

  • текстовые файлы (определяются типом TEXT);

  • нетипизированные файлы (определяются типом FILE).

В наших примерах F1 и F4- типизированные файлы, F2 - текстовый файл, F3 -нетипизированный файл. Вид файла, вообще говоря, определяет способ хранения информации в файле. Однако в Турбо Паскале нет средств контроля вида ранее созданных файлов. При объявлении уже существующих файлов программист должен сам следить за соответствием вида объявления характеру файла.

8.1 Доступ к файлам

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

PROGRAM NameOfProgram(input,output) ;

В Турбо Паскале это необязательно, вот почему заголовок программы можно опускать.

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

Файловая переменная связывается с именем файла в результате обращения к стандартной процедуре ASSIGN:

ASSIGN (<ф.п.>, <имя файла или л.у.>); .

Здесь <ф.п.> - файловая переменная (правильный идентификатор, объявленный в программе как переменная файлового типа);

<имя файла или л.у.> - текстовое выражение, содержащее имя файла или логическое устройство.

Если имя файла задается в виде пустой строки, например, ASSIGN(f, ' '), то в зависимости от направления обмена данными файловая переменная связывается со стандартным файлом INPUT или OUTPUT.