Программирование · 2 min read · Nov 18, 2025
Учебник по программированию на C для Linux Часть 23 - Структуры

До сих пор в этой продолжающейся серии учебников по программированию на C мы обсудили несколько аспектов, начиная от переменных и функций до указателей. Однако это все еще похоже на поверхностное изучение, так как в языке программирования C есть много других важных концепций.
Сегодня, в этом учебнике, мы обсудим одну из таких концепций - концепцию структур.
Структуры в языке программирования C
Вот как объявляется структура:
struct TAG {
*объявление переменной*
*объявление переменной*
*...*
*...*
*...*
};TAG может быть любым именем, которое вы хотите дать этой структуре, например, emp_details.
Теперь это должно быть общим знанием, что переменные используются для хранения значений в программе на C. До сих пор мы видели программы/код, использующие одну или несколько переменных, но никогда не видели, чтобы несколько переменных были сгруппированы вместе. Да, это возможно, и именно это делают структуры.
Представьте случай, когда код, который вы пишете, связан с ведением учета данных сотрудников в компании. Каждый раз, когда новый сотрудник присоединяется, ваша программа получает имя, возраст, должность и отдел сотрудника. Таким образом, в этом случае идеально, чтобы код был написан таким образом, чтобы вся эта информация, относящаяся к сотруднику, рассматривалась как единое целое.
Таким образом, один из способов написать код таким образом - создать структуру, которая группирует всю эту информацию, связанную с сотрудником. Все, что вам нужно сделать, это создать экземпляр структуры (или переменную этого типа структуры) и заполнить все данные, относящиеся к новому сотруднику.
Следующие несколько способов, с помощью которых вы можете создать переменные типа структуры (a, b и c в этом случае):
struct emp_details {
*объявление переменной*
*объявление переменной*
*...*
*...*
*...*
}a, b, c;struct emp_details a;
struct emp_details b;
struct emp_details c;Хватит теории, давайте возьмем простой пример. Предположим, ваша команда состоит из 2 участников, и вы хотите сохранить их данные на своем компьютере с помощью программы, которую вы хотите написать на C. Следующий фрагмент кода должен дать вам общее представление о том, как структуры могут быть полезны в этом случае:
#include
struct emp_details {
int emp_code;
int emp_age;
};
int main()
{
struct emp_details employee[2];
printf("\n введите код и возраст первого участника\n");
scanf("%d", &employee[0].emp_code);
scanf("%d", &employee[0].emp_age);
printf("\n введите код и возраст второго участника\n");
scanf("%d", &employee[1].emp_code);
scanf("%d", &employee[1].emp_age);
for(int i=0; i<2; i++)
{
printf("\n Код и возраст участника %d: %d и %d \n", i+1, employee[i].emp_code, employee[i].emp_age);
}
return 0;
} Итак, в этом коде мы сначала объявили структуру с именем ‘emp_details’ с ‘emp_code’ и ‘emp_age’ в качестве двух ее переменных-членов. Затем в функции ‘main’ мы определили два объекта этой структуры в виде массива. Далее мы заполнили переменные-члены, соответствующие этим объектам, принимая ввод от пользователя. И, наконец, программа выводит эти значения обратно пользователю.
Вот вывод, когда мы выполнили программу на нашем компьютере:
введите код и возраст первого участника
105
27
введите код и возраст второго участника
110
32
Код и возраст участника 1: 105 и 27
Код и возраст участника 2: 110 и 32Переменные, которые являются частью структуры, могут быть любого типа. Вы даже можете иметь объекты/экземпляры другой структуры в своей структуре. Все это и многое другое в нашем следующем учебнике по структурам, так что оставайтесь с нами.
Заключение
Этот учебник сосредоточился на основах структур в языке программирования C. Мы узнали, как объявить структуру, затем определить объект или экземпляр для нее и, наконец, как получить доступ к переменным структуры. В наших предстоящих учебниках мы углубимся немного больше и узнаем больше о структурах.
Get new posts in your inbox
No spam. Unsubscribe anytime.