Объединения - это составной объект, в который входят компоненты любых типов, за исключением функций, и в каждый момент времени может использоваться только один из его компонентов. Описание объединения имеет вид:
union {
Описание компонента1;
Описание компонента2;
…
Описание компонентаn;
};
Для каждого из этих компонентов выделяется одна и та же область памяти, т. е. они перекрываются. Хотя доступ к этой области памяти возможен с использованием любого из компонентов, компонент для этой цели должен выбирается так, чтобы полученный результат не был бессмысленным.
С объединение может быть связано имя так же как и со структурой.
Пример
union geom._fig {
float radius;//окружность
floata[2];//прямоугольник
intb[3];//треугольник
} ;
В этом примере не лишена смысла лишь обработка только активного компонента, т. е. компонента, который последним получил свое значение. Например, после присваивания значения компоненту radius, не имеет смысла обращение к массиву b[3].
С объединением работают также как и со структурой можно использовать только 2 операции. ‘.’ (операция указания члена) и ‘&’(взятие адреса).