Структуры данных:
Типы данных и ячейки памяти, определенные с помощью ключевых слов.
`struct S {}` - определение структуры с именованными полями.
`struct S { x: T }` - определение структуры с именованным полем X типа T.
`struct S(T);` - определение структуры «tupled» с нумерованным полем .0 типа T.
`struct S;` - определение структуры блока NOM нулевого размера. Не занимает места, оптимизировано.
`enum E {}` - определение перечисления, с алгебраическими типами данных, помещенных в объединение...
Язык C довольно прост в том плане, что требует изучения всего пары основных концепций организации памяти. Это размер данных и указатель. А далее у вас есть полная свобода, чтобы манипулировать ими как угодно. В то же время некоторые особенности синтаксиса могут вызвать недопонимание. Рассмотрим, например, структуры. Структура это просто набор данных, такой же как массив. Единственное отличие в том, что массив содержит элементы одного размера с доступом к ним по индексу, а структура может содержать элементы разного размера, и у каждого элемента есть своё имя...