Что такое структура?
Часть раздела Logic & Flow путешествия по C на Coddy — урок 38 из 63.
До сих пор вы работали со встроенными типами данных C, такими как int, float и char. Но что, если вам нужно сгруппировать связанную информацию вместе? Именно здесь структуры, или struct, становятся неоценимыми.
struct — это определяемый пользователем тип данных, который позволяет объединять несколько переменных разных типов под одним именем. Представьте это как контейнер, который хранит связанные фрагменты информации вместе.
Рассмотрим систему учета студентов. Вместо того чтобы управлять отдельными переменными для каждого фрагмента информации о студенте, вы можете сгруппировать их вместе:
// Вместо отдельных переменных:
char student_name[50];
int student_id;
float student_grade;
// Вы можете сгруппировать их в структуру (struct):
struct Student {
char name[50];
int id;
float grade;
};Этот подход делает ваш код более организованным и понятным. Когда вы видите struct Student, вы сразу понимаете, что она содержит всю необходимую информацию о студенте. Структуры — это фундаментальные строительные блоки, которые помогают моделировать объекты реального мира в ваших программах, делая код более логичным и удобным в сопровождении.
Шпаргалка
struct — это пользовательский тип данных, который объединяет несколько переменных различных типов под одним именем:
struct Student {
char name[50];
int id;
float grade;
};Структуры помогают организовать связанные данные вместе, делая код более логичным и удобным в сопровождении по сравнению с использованием отдельных переменных.
Попробуйте сами
В этом уроке нет задания по программированию.
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Logic & Flow
1Основы указателей
Что такое указатель?Объявление указателейОператор взятия адреса (&)Оператор разыменования (*)Указатели NULLИтоги: Основы указателей4Проект: Простая текстовая утилита
Обзор проектаПодсчет символов7Структуры (structs)
Что такое структура?Объявление структурыСоздание переменных структурДоступ к членам структурыИнициализация структурПовторение: структура данных Student2Указатели и массивы
Имена массивов как указателиЭлементы массива — указателиАрифметика указателейСравнение указателейИтоги: Обход массива через указатели5Указатели и функции
Передача по значениюПередача указателей в функцииИзменение переменных через указателиКлассический пример: SwapПередача массивов в функцииИтоги: указатели как аргументы функций8Структуры и указатели
Указатели на структурыОператор «стрелка» (->)Передача структур по значениюПередача указателей на структурыДинамическое выделение памяти для структурИтоги: Изменение структур через указатели11Итоговые задачи на повторение
Повторение: динамическая конкатенация строкПовторение: массив структурПовторение: счетчик частоты слов3Символьные массивы и строки
Строки как массивы charНуль-терминаторВвод строк с помощью scanfИспользование strlen()Использование strcpy()Использование strcat()Использование strcmp()Итоги: основные строковые функции