Пример структуры C ++ | Структура в учебнике C ++

Структура C ++ — это коллекция разных типов данных под одним и тем же именем . Эти элементы данных означают отсутствие рулона, метки названы как элементы структуры. Структуры в C ++ — это определяемые пользователем типы данных, которые используются для хранения группы элементов с разными типами данных.

Предположим, вам дана задача хранить академическую информацию студента и составлять для этого программу. Вы можете использовать разные типы данных в соответствии с требованиями, например, массив для хранения меток, строку для имени, int для получения номера рулона и т. Д. В этом случае может возникнуть проблема. , например, доступ к данным. Но что, если вам дадут способ хранить их все вместе?

Пример структуры C ++

C ++ позволяет нам создавать наши собственные определяемые пользователем агрегированные типы данных. агрегированный тип данных — это тип данных, который группирует вместе несколько отдельных переменных. Одним из простейших типов агрегированных данных является структура. struct (сокращение от структуры) позволяет нам группировать переменные смешанных типов данных вместе в единый блок.

Вы Можно представить себе коробку, в которой хранятся все ваши любимые продукты. Структура тоже такая же, внутри хранятся все наши требования.

# Объявление структуры

Вы можете объявить структуру с помощью ключевого слова struct.

 struct имя_структуры {member_type1 member_name1; member_type2 member_name2;  ...} имена_объектов; 

Здесь имя_структуры — это имя структуры, которую вы предоставите. Object_name используется для идентификации структуры внутри main (). А member_types — это элементы данных, которые мы будем использовать, например номер ролика, имя и т. Д.

 struct Student {char  имя [10];  int roll_number, total_marks;  float average;} stn; 

Помните, что объявление структуры — это всего лишь объявление; когда мы объявляем структуру, память не выделяется. Это похоже на план, означает, как будет выглядеть структура.

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

# Определение структурной переменной (объекта)

Структурная переменная — это переменная, которая всегда записывается внутри main (), с помощью которого мы можем получить доступ к членам структуры. Переменная структуры и имя_объекта одинаковы. Вы можете объявить это при объявлении структуры или внутри main (). Но структуру можно также объявить внутри main () или вне main ().

Когда определяется структурная переменная, выделяется только память. Мы можем определить структурную переменную структуры Student внутри main следующим образом:

 student stn; 

В приведенном выше примере, если мы рассмотрим, что размер числа с плавающей запятой равен 4 байтам, размер int равен 4 байтам, а размер char равен 1 байту.. Тогда общий размер структурной переменной (stn) будет (1 * 10) + (4 * 2) + (4 * 1) = 22 байта.

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

Например, мы можем написать в main ()

 student class1, class2;  

# Доступ к членам структуры

Предположим, вы хотите получить доступ к данным roll_no структуры Student (определено выше). Чтобы получить доступ к любому члену структуры, вы должны использовать оператор точка (.). См. Следующий синтаксис.

 structure_variable.structure_member; 

Например, чтобы получить доступ к количеству списков в определенной выше Структура учащегося, вы должны написать следующее.

 stn.roll_number; 

Например, чтобы получить доступ к количеству рулонов определенного выше Student Структура, необходимо написать следующий код.

 stn.roll_number; 

Кроме того, для нескольких переменных структуры мы можем написать следующее.

 class1.roll_number = 1; class2.roll_number = 1; 

Для лучшего понимания обратитесь к приведенному ниже коду.

См. следующая программа.

 #include  using namespace std; struct student {string name;  int roll, метки;  float avg;}; int main () {ученик cl1, cl2; //объявление объекта структуры//Присвоение значений членам структуры с помощью объекта cl1.name = "Debasis";  cl1.roll = 15;  cl1.marks = 541;  cl1.avg = 83;  cl2.name = "Аюш";  cl2.roll = 12;  cl2.marks = 654;  cl2.avg = 92; //Вывод значений элементов структуры cout  

См. следующий результат.

#Structure and Pointer

Как и на другие типы, на структуру также можно указать ее тип указателя.

См. следующий пример.

 struct Fruit {string name; string color;}; 

И в main (), если мы напишите следующее.

 Fruit fr; Fruit * pfr; 

Здесь fr - это объект структуры Fruit, но pfr - указатель, указывающий на объект структуры Fruit. Итак, после этого должен быть написан следующий код.

 pfr = & fr; 

Таким образом, адрес fr будет присвоено pfr . Обратитесь к приведенному ниже примеру кодирования для лучшего понимания..

 #include  using namespace std; struct fruit {имя строки, цвет;  int weight;}; int main () {//Использование нескольких фруктов f1, f2;  фрукты * pft;  фрукт * pf2;  pft = & f1;  pf2 = & f2;  строка s;  pft-> name = "Банан";  pft-> color = "желтый";  pft-> weight = 25;  pf2-> name = "Яблоко";  pf2-> color = "Красный";  pf2-> weight = 50; //Доступ к члену можно получить с помощью -> также cout  name;  cout  color;  cout  color;  return 0;} 

См. следующий результат.

# Структура и функция

Мы можем назначать функции членам структуры, а затем использовать их в Функция. См. Следующий пример.

 #include  using namespace std; struct voter {string name, add;  int id;};//объявление функции//объект структуры является параметромvoid display (struct voter v) {cout  

См. следующий результат.

# Вложенная структура

Вложенная структура означает структуру внутри структуры, такую ​​же, как вложенные операторы if-else. Итак, здесь мы также можем объявить структуру внутри структуры и затем использовать ее.

 struct structure1 {Member1; member2;}; struct structure2 {Member1;  Member2;  struct structure1 obj;}; 

Приведенный выше синтаксис сообщает, что structure1 вложен в structure2 ▪.

#Доступ к элементам вложенной структуры

В main () мы должны сначала объявить объект структуры 2, а объект структуры 1 уже объявлен в структуре 2.

 main () {structure2 st2;//Чтобы получить доступ к члену структуры 2, просто просто writeest2.  Member1;//Чтобы получить доступ к члену структуры1, мы должны использовать Writest2.obj.Member2;} 

Вы правильно поймете концепцию из следующего нижеприведенного примера.

  #include  с использованием пространства имен std; struct salary {int DA, TA, Total;}; struct Employee {string name, add; //объявление структуры зарплаты как вложенной структуры struct salary s;}; void display (struct Employee E1) {cout  

См. следующий вывод.

Итак, на этом мы завершаем концепцию структуры C ++. Пример | Структура в учебнике C ++.

Оцените статью
nanomode.ru
Добавить комментарий