Составители:
Рубрика:
95
15. Структуры
Структура – это набор взаимосвязанных данных ,возможно и разных типов,
объединенных в единое целое. Возможностью объединять данные разных ти-
пов, структура отличается от массива, а массив, как известно, объединяет дан-
ные только одного типа. Структуру целесообразно использовать в тех случаях,
когда необходимо иметь одну переменную, содержащую набор взаимосвязных
данных. Например, для
хранения списка сотрудников организации, удобно
иметь одну переменную(Kadry), содержащую такие данные как фамилию со-
трудника, его должность и отдел. При использовании структуры ее в начале
необходимо объявить, а затем создать экземпляр этой структуры. Структура
описывается с помощью ключевого слова struct [4]:
struct Kadry { // описание структуры
int nzap; // номер записи
char fam[20]; // фамилия
char dol[10]; // должность
int otdel; // отдел
};
Идентификатор данной структуры Kadry определяет ее тег(имя). Элементы
структуры называются членами-данными или полями. Каждый член структуры
объявляется так же как обычная переменная. В приведенном примере структура
содержит два массива типа char и два члена типа int. В описании структуры по-
сле закрывающейся фигурной скобки ставится точка с запятой
. Когда структура
описана, ее можно использовать, предварительно создав экземпляр структуры,
которая выглядит следующим образом:
Kadry sotr ;
В результате для структуры выделяется необходимая память, и эта область па-
мяти связывается с переменной, имеющей имя sotr. После чего можно присваи-
вать значения членам-данным:
sotr. nzap = 1; strcpy(sotr.fam, “Сидоров”); strcpy(sotr.dol, “лаборант”);
sotr.otdel = 12;
Для доступа к членам-
данным используется оператор доступа к членам
структуры, который представляет собой точку между именем переменной и
именем члена структуры. Оператор доступа позволяет обращаться к конкрет-
ному члену структуры, как для чтения, так и для изменения его значения. При
желании можно сразу инициализировать все члены вновь созданного экземпля-
ра структуры:
Kadry engineer = {
2,
“Петров
”,
“инженер” ,
15
};
Страницы
- « первая
- ‹ предыдущая
- …
- 93
- 94
- 95
- 96
- 97
- …
- следующая ›
- последняя »
