Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
вопросы к экзамену 1-2сем.doc
Скачиваний:
10
Добавлен:
23.09.2019
Размер:
186.88 Кб
Скачать

2.Структурированные типы данных

Структурированные типы данных составляются из других типов данных , т.е. структурированные данные имеют в своем составе некоторые компоненты.

Типы структурированных данных:

1)Тип string; 2)Тип array; 3)Тип record; 4)Тип set; 5)Тип file.

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

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

Переменная - целая:

1)Имя переменной.

2)Имя типизированной константы.

Переменная составляющая:

1)Компонента массива.

2)Компонента записи.

Переменные составляющие используются с типами данных массив (array) и запись (record). Ссылочные переменные реализуются через тип данных указатель.

5.Файлы. Виды файлов. Доступ к файлам. Описание файлового типа. Файловая переменная. Общая схема работы с файлами.

30. Файлы

Введение файлового типа в язык ПАСКАЛЬ вызвано необходимостью обеспечить возможность работы с периферийными (внешними) устройствами ЭВМ, предназначенными для ввода, вывода и хранения данных.

Файловый ТИП данных или файл определяет упорядоченную совокупность произвольного числа однотипных компонент.

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

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

'A:LAB1. DAT' 'c:\ABC150\pr.pas' 'lab3.pas'.

Операционная система MS-DOS не делает особого различия между файлами на дисках и лентах и устройствами ЭВМ и портами коммуникаций.

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

Механизм буферизации позволяет более быстро и эффективно обмениваться информацией с внешними устройствами.

Для работы с файлами в программе необходимо определить файловую переменную. TURBO PASCAL поддерживает три файловых типа: текстовые файлы, компонентные файлы, бестиповые файлы.

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

var tStory: Text;

Описание компонентных файлов имеет вид:

var fComp: File of T;

где Т- тип компоненты файла. Примеры описания файловой переменной компонентного типа:

type М=array[1..500] of Longint;

var f1: File of Real;

f2: File of Integer;

fLi: File of M;

Бестиповые файлы описываются с помощью служебного слова File: var f: File;

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

TURBO PASCAL вводит ряд процедур и функций, применимых для любых типов файлов: Assign, Reset, Rewrite, Close, Rename, Erase,Eof,IOResult.