Лабораторная работа: Работа со структурами в языке программирования Си
Лабораторная работа №6
“Работа со структурами в языке программирования Си++”
Цель работы: познакомиться с понятием структуры и структурной переменной. Научиться создавать массивы структур и работать со вложенными структурами.
1. Теоретические сведения
Структура – это объединение одного либо более объектов (переменных, массивов, указателей, других структур). Как и массив, она представляет собой совокупность данных, но отличается от него тем, что к ее элементам необходимо обращаться по имени, и ее различные элементы не обязательно должны принадлежать одному типу.
Структуры удобно использовать там, где разнообразные данные, относящиеся к одному и тому же объекту, необходимо объединять. Например, ученика средней школы характеризуют следующие данные: фамилия, имя, дата рождения, класс, возраст.
Объявление структуры осуществляется с помощью ключевого слова struct, за которым следует ее тип, список элементов, заключенных в фигурные скобки. Ее можно представить в следующем общем виде:
struct тип {тип элемента 1 имя элемента 1;
тип элемента n имя элемента n; };
Именем элемента может быть любой идентификатор. В одной строке можно записывать через запятую несколько идентификаторов одного типа.
Например:
struct date { int day;
int month;
int year;} ;
Русские буквы использовать в идентификаторе в языке СИ нельзя.
Следом за фигурной скобкой, заканчивающей список элементов, могут записываться переменные данного типа, например:
struct date {…} a, b, c;
При этом выделяется соответствующая память.
Выведенное имя типа можно использовать для объявления записи, например: struct date day;. Теперь переменная day имеет тип date.
Разрешается вкладывать структуры одна на другую. Для лучшего восприятия структуры используем русские буквы в идентификаторах, в языке СИ этого делать нельзя.
Например:
struct УЧЕНИК { char Фамилия [15];
имя [15];
struct DATA ДАТА РОЖДЕНИЯ;
int класс, возраст;};
Определенный выше тип DATA включает три элемента: День, Месяц, Год, содержащие целые значения (int). Запись УЧЕНИК включает элементы: ФАМИЛИЯ [15]; ИМЯ[15]; ДАТА РОЖДЕНИЯ, КЛАСС, ВОЗРАСТ. ФАМИЛИЯ [15] и ИМЯ [15] – это символьные массивы из 15 компонент каждый. Переменная ДАТА РОЖДЕНИЯ представлена составным элементом (вложенной структурой) ДАТА. Каждой дате рождения соответствуют день месяца, месяц и год. Элементы КЛАСС и ВОЗРАСТ содержат значения целого типа (int). После введения типов ДАТА и УЧЕНИК можно объявить переменные, значения которых принадлежат этим типам.
Например:
struct УЧЕНИК УЧЕНИКИ [50];
массив УЧЕНИКИ состоит из 50 элементов типа УЧЕНИК.
В языке СИ разрешено использовать массивы структуры; записи могут состоять из массивов и других записей.
Чтобы обратиться к отдельному компоненту структуры, необходимо указать ее имя, поставить точку и сразу за ней написать имя нужного элемента.
--> ЧИТАТЬ ПОЛНОСТЬЮ <--