Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Industrial programming >> Язык C

Структура С++ с примером

Что такое структура в C++?

СТРУКТУРА — это структура данных C++, которую можно использовать для хранения вместе элементов разных типов данных. В C++ структура — это определяемый пользователем тип данных. Структура создает тип данных для группировки элементов данных разных типов под одним типом данных.

Например:

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

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

Из этого руководства по C++ вы узнаете:

Когда использовать структуру?

Вот несколько причин использования структуры в C++.

Инициализация структуры C++

Чтобы создать структуру C++, мы используем ключевое слово struct, за которым следует идентификатор. Идентификатор становится именем структуры. Вот синтаксис для создания структуры C++:

Синтаксис:

struct struct_name  
{  
     // struct members
}   

В приведенном выше синтаксисе мы использовали ключевое слово struct. struct_name — это имя структуры.

Элементы структуры добавляются в фигурных скобках. Эти элементы, вероятно, относятся к разным типам данных.

Например:

struct Person  
{  
    char name[30];  
     int citizenship;  
     int age;  
}  

В приведенном выше примере Person — это структура с тремя элементами. Участники включают имя, гражданство и возраст. Один член имеет тип данных char, а остальные 2 являются целыми числами, когда структура создается, память не выделяется. Память выделяется только после добавления переменной в структуру.

Создание экземпляров структуры

В приведенном выше примере мы создали структуру с именем Person. Мы можем создать структурную переменную следующим образом:

Person p;

p — это структурная переменная типа Person. Мы можем использовать эту переменную для доступа к членам структуры.

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

Чтобы получить доступ к элементам структуры, мы используем экземпляр структуры и оператор точки (.). Например, чтобы получить доступ к возрасту члена структуры Person:

p.age = 27;

Мы получили доступ к возрасту члена структуры Person, используя экземпляр структуры, p. Затем мы установили значение возраста участника на 27 лет.

Пример 1:

#include <iostream>    
using namespace std;
struct Person
{
	int citizenship;
	int age;
};
int main(void) {
	struct Person p;
	p.citizenship = 1;
	p.age = 27;
	cout << "Person citizenship: " << p.citizenship << endl;
	cout << "Person age: " << p.age << endl;

	return 0;
}

Вывод:

Вот скриншот кода:

Пояснение кода:

  1. Включите файл заголовка iostream в нашу программу, чтобы использовать определенные в нем функции.
  2. Включите пространство имен std, чтобы использовать его классы, не вызывая его.
  3. Создайте структуру с именем Person.
  4. Начало тела структуры.
  5. Создайте член структуры с именем Citizens типа integer.
  6. Создайте член структуры с именем age целочисленного типа.
  7. Конец тела структуры.
  8. Вызовите функцию main(). Логика программы должна быть добавлена ​​в тело этой функции.
  9. Создайте экземпляр структуры Person и назовите его p.
  10. Установите значение гражданства члена структуры равным 1.
  11. Установите значение возраста члена структуры равным 27.
  12. Выведите значение гражданства члена структуры на консоли вместе с другим текстом.
  13. Выведите значение возраста члена структуры на консоль вместе с другим текстом.
  14. При успешном выполнении программа должна вернуть значение.
  15. Конец функции main().

Указатели на структуру

Можно создать указатель, указывающий на структуру. Это похоже на то, как создаются указатели, указывающие на собственные типы данных, такие как int, float, double и т. д. Обратите внимание, что указатель в C++ будет хранить ячейку памяти.

Пример 2:

#include <iostream>
using namespace std;

struct Length
{
	int meters;
	float centimeters;
};

int main()
{
	Length *ptr, l;

	ptr = &l;

	cout << "Enter meters: ";
	cin >> (*ptr).meters;
	cout << "Enter centimeters: ";
	cin >> (*ptr).centimeters;
	cout << "Length = " << (*ptr).meters << " meters " << (*ptr).centimeters << " centimeters";

	return 0;
}

Вывод:

<сильный>

Вот скриншот кода:

<сильный>

Пояснение кода:

  1. Включите заголовочный файл iostream в нашу программу, чтобы использовать ее функции.
  2. Включите пространство имен std в нашу программу, чтобы использовать его классы, не вызывая его.
  3. Создайте структуру с именем Length.
  4. Начало тела длины структуры.
  5. Создайте член структуры с именем измерители целочисленного типа данных.
  6. Создайте член структуры с именем сантиметры целого числа.
  7. Конец тела длины структуры.
  8. Вызвать функцию main().
  9. Начало тела функции main().
  10. Создайте переменную-указатель *ptr и нормальную переменную l типа Length.
  11. Сохраните адрес переменной l в нашей переменной-указателе.
  12. Отобразить на консоли сообщение с просьбой ввести значение переменных счетчиков.
  13. Прочитайте значение, введенное пользователем с клавиатуры. Доступ к измерителям функций-членов здесь осуществляется с помощью переменной-указателя.
  14. Отображать на консоли сообщение с просьбой ввести значение переменной в сантиметрах.
  15. Прочитайте значение, введенное пользователем с клавиатуры. Доступ к сантиметрам функции-члена здесь осуществляется с помощью переменной-указателя.
  16. Отображать значения, считанные пользователем, на консоли вместе с другим текстом.
  17. Программа должна возвращать значение после успешного выполнения.
  18. Конец тела функции main().

Структура как аргумент функции

Вы можете передать структуру функции в качестве аргумента. Это делается так же, как передача обычного аргумента. Переменные структуры также могут быть переданы в функцию. Хороший пример — когда вам нужно отобразить значения членов структуры. Давайте продемонстрируем это:

Пример 3:

#include<iostream>
using namespace std;

struct Person
{
	int citizenship;
	int age;
};

void func(struct Person p);

int main()
{
	struct Person p;

	p.citizenship = 1;
	p.age = 27;

	func(p);
	return 0;
}
void func(struct Person p)
{
	cout << " Person citizenship: " << p.citizenship<<endl;
	cout << " Person age: " << p.age;
}

Вывод:

Вот скриншот кода:

Пояснение кода:

  1. Включите файл заголовка iostream в наш файл. Затем мы будем использовать его функции без ошибок.
  2. Включите пространство имен std в нашу программу, чтобы использовать его классы. Нам не нужно будет вызывать пространство имен, чтобы использовать его классы.
  3. Создайте структуру с именем Person.
  4. Начало тела структуры Person.
  5. Создайте элемент структуры Person. Член называется гражданством и имеет целочисленный тип.
  6. Создайте элемент структуры Person. Член называется age и имеет целочисленный тип.
  7. Конец тела структуры Person.
  8. Создайте функцию, которая принимает в качестве аргумента экземпляр структуры Person, p.
  9. Вызов основной функции. Символ { отмечает начало тела функции main().
  10. Создайте экземпляр структуры Person и назовите его p.
  11. Получите доступ к переменной Citizen, используя экземпляр структуры p и присвоив ей значение 1.
  12. Доступ к переменной-члену структуры age с помощью экземпляра структуры p и присвоения ему значения 27.
  13. Вызвать функцию и передать ей в качестве аргумента экземпляр структуры Person, p.
  14. Функция должна возвращать значение после успешного выполнения.
  15. Конец тела функции main().
  16. Создайте тело функции.
  17. Начало тела функции.
  18. Доступ к значению гражданства члена структуры и печать его на консоли вместе с другим текстом.
  19. Получите доступ к значению возраста элемента структуры и распечатайте его на консоли вместе с другим текстом.
  20. Конец тела функции.

Ограничение структуры C++

Ниже приведены ограничения структур:

Обзор:


Язык C

  1. C-структуры и указатели
  2. Цикл C++ do…while с примерами
  3. Оператор C++ Switch Case с ПРИМЕРОМ
  4. C++ динамическое выделение массивов с примером
  5. Указатели C++ с примерами
  6. Тип данных Char C++ с примерами
  7. Перегрузка оператора C++ с примерами
  8. std::list в C++ с примером
  9. Функции C++ с примерами программ
  10. Разница между структурой и классом:объяснение на примере C++