Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
lekcija-18.pdf
Скачиваний:
17
Добавлен:
27.03.2016
Размер:
285.74 Кб
Скачать
//год
//месяц //день

При обращении к элементам структуры с помощью указателя нужно учитывать приоритет операций. Для изменения порядка действий необходимо использовать явные скобки.

Выражение (*ptr_date).year представляет собой обращение к элементу year структуры, связанной с указателем ptr_date. Нельзя опускать скобки в этом выражении,

так как приоритет операции точка (.) выше, чем операции доступ по указателю (*).

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

реализуется следующим образом: p->q->mem, что равносильно (p->q) -> mem

(поскольку

операции -> и

. выполняются слева направо). Аналогично,

выражение

stud. birthdate. month

означает (stud. birthdate). month.

 

Массив структур

Определим шаблон структуры data, содержащий информацию о дне рождения (год, месяц, день), и структурные переменные masha_data и sasha_data с информацией о днях рождения Маши и Саши:

struct data

{

int year; unsigned mes; unsigned day;

};

data masha_data, sasha_data;

Тогда:

masha_data.day

//доступ к полю «день рождения» Маши

sasha_data.year

//доступ к полю «год рождения» Саши

masha_data (вся информация о дате рождения Маши), sasha_data (вся информация о дате рождения Саши).

Для данного структурного типа опишем массив структур person_data: data person_data [20];

Тогда:

person_data – информация о датах рождения всей группы (массива людей из двадцати человек);

person_data[i] – информация о дате рождения (i+1) – го члена группы (i – ый элемент массива);

person_data[i]. mes – месяц рождения (i+1) – го члена группы;

Определим структурный тип (шаблон структуры) mash с информацией о владельце автомобиля: номер, марка автомобиля, фамилия и адрес владельца.

struct Auto

{int nomer ; //номер автомобиля char marka[20]; //марка автомобиля char fio[40]; //фамилия владельца

Программирование – лекция 18 (лекции Стрикелевой Л.В.)

10

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]