Методичні рекомендації щодо виконання етапів курсової роботи

Структуры – это составные типы данных, построенные с использованием других типов. Они представляют собой объединенный общим именем набор данных различных типов. Именно тем, что в структурах могут храниться данные разных типов, они и отличаются от массивов, хранящих данные одного типа.

Отдельные данные структуры называются элементами или полями. Элементы одной и той же структуры должны иметь уникальные имена, но две различные структуры могут содержать не конфликтующие элементы с одинаковыми именами

В соответствии с синтаксисом языка описание структуры начинается со служебного слова struct, вслед за которым помещается выбранное пользователем имя типа. Элементы, входящих в структуру, помещается в фигурные скобки, вслед за которыми ставится точка с запятой. элементы структуры могут быть как базовых, так и производных типов.

Описание структуры не резервирует никакого пространства в памяти, оно только создает новый тип данных, который может использоваться для определения переменных. В структуре обязательно должен быть указан хотя бы один компонент.

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

struct Student

{

char Name[20]; // Имя

char Address[30]; // Адрес

int Age; // Возраст

double Rating; // Успеваемость

};

Ключевое слово struct указывает на то, что код определяет формат структуры. Идентификатор Student – название, или тег, для этого формата. Таким образом, теперь можно создавать переменные типа Student так же, как переменные любого базового типа, например int или char. Между фигурными скобками находится список типов заданных данных. Каждый элемент списка – это оператор определения. Здесь можно использовать любой из типов данных С++, включая массивы и другие структуры. В этом примере используются два массива типа char, удобные для сохранения строк с атрибутами «Имя» и «Адрес», а также int и double – для хранения соответствующих числовых значений.

Теперь, когда структура описана, ее можно использовать. Сначала нужно создать (определить) экземпляр структуры. Это выглядит следующим образом:

Student BestStudent;

Для доступа к элементам структуры используются операции доступа к элементам: операция точка (.) и операция стрелка (->).

Операция стрелка обеспечивает доступ к элементу структуры через указатель на объект (в данной работе этот тип доступа не используется)..

Операция точка обращается к элементу структуры по имени объекта (экземпляра структуры) или по ссылке на объект. Например:

strcpy(BestStudent.Name, "ИВАНОВА");

strcpy(BestStudent.Address, "ПР. ЛЕНИНА, 9-А");

BestStudent.Age = 17;

BestStudent.Rating = 10.57;

В рассматриваемом фрагменте программы происходит раздельная инициализация элементов-данных экземпляра BestStudent структуры Student. Причем, для записи в соответствующие поля строк символов обозначающих имя (фамилию) и адрес студента используется функция strcpy().

Оператор

strcpy(BestStudent.Name, "ИВАНОВА");

обеспечивает вызов этой функции, обращение к полю Name экземпляра BestStudent и запись в это поле строки, "ИВАНОВА".

Оператор

BestStudent.Age = 17;

инициализирует элемент - данных с именем Age (возраст) значением 17.

При необходимости возможна одновременная инициализация сразу всех элементов-данных вновь созданного экземпляра структуры. Например:

BestStudent = {"ИВАНОВА", "ПР. ЛЕНИНА 9-А", 17, 10.57};

Ниже приведен пример программы, которая создает, инициализирует и выводит на печать содержимое структуры, используемой для описания рассмотренных выше реквизитов студента.

// Программа 1

// Элементарная обработка полей структур

#include <iostream>

#include <string.h> // Для работы с функцией strcpy();


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: