Описание записей
Записи
Содержание
Записи. Бинарные файлы
Лекция 7
Прочие затраты.
Амортизация;
Отчисления на социальные нужды;
Затраты на оплату труда;
Материальные затраты;
Использование таблиц с разнотипными полями. Работа с бинарными файлами.
Записи. 1
Описание записей. 1
Задание записей константой. 3
Доступ к полям.. 3
Оперирование несколькими полями. 4
Вложенные операторы with. 5
Запись с вариантной частью.. 6
Описание записи с вариантной частью.. 6
Механизм использования записи с вариантной частью.. 7
Бинарные файлы.. 7
Типизированные файлы.. 8
Описание типизированных файлов. 8
Назначение типизированного файла. 9
Открытие и закрытие типизированного файла. 9
Считывание из типизированного файла. 9
Поиск в типизированном файле. 10
Запись в типизированный файл. 10
Нетипизированные файлы.. 11
Описание нетипизированных файлов. 11
Назначение нетипизированного файла. 11
Открытие и закрытие нетипизированного файла. 11
Поиск в нетипизированном файле. 12
Запись и чтение. 12
Подпрограммы обработки директорий. 12
Применимость подпрограмм обработки файлов. 13
Продолжая изучение структурированных типов данных, переходим к записям.
Как и массивы, записи являются структурами прямого доступа, однако, в отличие от массивов, могут хранить элементы, относящиеся к разным типам данных.
Таким образом, запись - это вектор, компоненты которого ( поля ) могут относиться к разным типам данных.
В разделе var переменную типа запись описывают так:
var <имя_записи>: record <имя_поля1>: <тип_поля1>;
[<имя_поля2>: <тип_поля2>;]
[...]
end;
Имена полей должны подчиняться общим правилам построения идентификаторов. Повторение имен полей внутри одной записи не допускается.
Замечание: Имена полей могут совпадать с именами других переменных, поскольку на самом деле являются составными:
<имя_записи>.<имя_поля>.
Поэтому можно записать:
var x: real;
r: record x: real;
y: real
end;
Поля могут относиться к любым стандартным (базовым или сконструированным) или определенным ранее типам, даже к файловому или процедурному (см. лекцию 8).
Если несколько подряд идущих полей принадлежат к одному типу данных, их описания можно объединить:
var <имя_записи>: record <имя_поля1>,_,<имя_поляN>: <тип_полей>;
<имя_поляS>: <тип_поляS>;
...
end;
Например:
var zap1: record x,y: real;
i,j,k: integer;
flag: boolean;
s: set of 'a'..'z';
a: array[1..100] of byte;
data: record day:1..31;
month: 1..12;
year: 1900..2100;
end;
end;
Эта запись содержит 9 полей, три из которых сами являются составными.
Наиболее распространенный способ использования записей - двумерная таблица, каждый столбец которой имеет свой тип. Такую структуру описывают, например, следующим образом:
var tabl: array[1..100] of zap1;