КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Оператор with
ЗАПИСЬ. В практике программирования приходится иметь дело с данными, которые естественным образом состоят из других данных. Например, сведения о студентах содержат имя, фамилию, отчество, число, месяц и год рождения, домашний адрес, результаты экзаменационных сессий и прочую информацию. Для представления подобной информации в языке Pascal используется тип запись. Запись – это структурированный тип данных, состоящий из фиксированного числа компонентов одного или нескольких типов. Определение типа записи начинается идентификатором record и заканчивается зарезервированным словом end. Между ними заключен список компонентов, называемых полями, с указанием идентификаторов полей и типа каждого поля. Формат: type <имя типа> = record <идентификатор поля>: <тип компонента>; ..................................... <идентификатор поля>: <тип компонента> end; var <имя переменной>: <имя типа>;
Например: type car = record Number: integer; {номер} Marka: string[20]; {марка автомобиля} FIO: string[40]; {Ф.И.О. владельца} Address: string[60] {адрес владельца} end; var M, V: car; В данном примере запись car содержит четыре компонента. Доступ к полям записи осуществляется через переменную типа «запись». (Это переменные M и V типа car). Идентификатор поля должен быть уникален в пределах записи, однако во избежание ошибок лучше делать его уникальным в пределах всей программы. Объем памяти, необходимый для записи, складывается из длин полей. Значения полей записи могут быть использованы в выражениях. Имена отдельных полей не применяются по аналогии с идентификаторами переменных, поскольку может быть несколько записей одинакового типа. Обращение к значению поля осуществляется с помощью идентификатора переменной и идентификатора поля, разделенных точкой. Такая комбинация называется составным именем. Например, чтобы получить доступ к полям записи car, надо записать: M.Number, M.Marka, M.FIO, M.Address Составное имя можно использовать везде, где допустимо применение типа поля. Для присваивания полям значений используется оператор присваивания. Составные имена можно, в частности, использовать в операторах ввода-вывода. Допускается применение оператора присваивания и к записям в целом, если они имеют один и тот же тип. Например: V:=M; После выполнения этого оператора значения полей записи V станут равны значениям соответствующих полей записи M. В ряде задач удобно пользоваться массивами из записей. Данный оператор позволяет использовать в тексте программы имена полей без указания имени переменной-записи. Формат: with <имя записи> do begin {операторы, содержащие имена элементов записи} end;
Один раз указав переменную типа запись в операторе with, можно работать с именами полей как с обычными переменными, т.е. без указания перед идентификатором поля имени переменной, определяющей запись. Например: with M do begin Number:=2347; Marka:=’Газ-24’; FIO:=’Петров В.И.’; Address:=’ул. Гоголя,19’ end;
Дата добавления: 2014-01-04; Просмотров: 393; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |