Иллюстрированный самоучитель по Turbo Pascal

Записи

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

Структура объявления типа записи такова:

<имя типа> = RECORD <сп.полей> END

Здесь:

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

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

type
BirthDay = record
day,month: Byte;
year: Word
end;
var
a,b: Birthday;
…….

В этом примере тип BIRTHDAY (день рождения) есть запись с полями DAY, MONTH и YEAR (день, месяц и год); переменные А и В содержат записи типа BIRTHDAY.

Как и в массиве, значения переменных типа записи можно присваивать другим переменным того же типа, например:

а: = b;

К каждому из компонентов записи можно получить доступ, если использовать составное имя, т.е. указать имя переменной, затем точку и имя поля:

а.day: = 27;
b.year: = 1939;

Для вложенных полей приходится продолжать уточнения:

type
BirthDay = record
day,month: Byte;
year: Word
end;
var
с: record
name: String;
bd: BirthDay
end;
begin
…..
if c.bd.year = 1939 then…
end.

Чтобы упростить доступ к полям записи, используется оператор присоединения WITH:

WITH <переменная> DO <оператор>

Здесь:

  • WITH, DO – ключевые слова (с, делать);
  • <переменная> – имя переменной типа запись, за которым, возможно, следует список вложенных полей;
  • <оператор> – любой оператор Турбо Паскаля.
Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.