Програмування файлів
ПРИКЛАД
Type
Student = record
Name:string[30];
Course:1..4;
Group:string[7];
End;
Month = (jan,feb,mar,apr,may,jun,july,aug,sep,oct,nov,dec);
Data = record
Day, Year:integer;
Mon:month;
End;
Album=record
Name:string[15];
Year:integer;
end;
Перший тип запису – Student – містить три поля. Всі поля різнотипові. Два з них являють рядкову величину, одне – цілочисельний діапазон. Другий тип ( Data) має два однотипових поля, які описані через кому. Третє поле має тип, визначений користувачем . Помітимо, що порядок опису полів ніякої ролі не відіграє, він визначається користувачем. Третій тип (Album) має поля, які використовуються у двох попередніх типах. Це дозволяється синтаксисом, оскільки повні імена об’єктів будуть різними. При цьому типи полів можуть бути як однаковими (поле Year), так і різними (поле Name).
Змінні типу запис вводяться аналогічно стандартним типам:
Var
stud1, stud2 : student;
new_date : data;
comp_disk : album;
Відзначимо, що так само, як і для даних типу масив, дозволяється виконувати операції присвоювання між цілими записами однакових типів. У всіх інших випадках опрацювання записів можна здійснювати покомпонентно, причому в межах тих операцій, які дозволяються типом відповідних полів. Виключення складають лише операції вводу-виводу для файлів. Для опрацювання компонента запису (тобто конкретного поля) ім’я поля вказується через крапку після імені запису: stud1.name –поле name запису stud1 .