мета-данные страницы
Различия
Показаны различия между двумя версиями страницы.
| Следующая версия | Предыдущая версия | ||
| c:c_ultimate_guide:union [2025/10/29 14:23] – создано radi0dev | c:c_ultimate_guide:union [2025/11/09 12:07] (текущий) – внешнее изменение A User Not Logged in | ||
|---|---|---|---|
| Строка 3: | Строка 3: | ||
| Объединения (union) позволяют определить свой тип данных и хранят набор элементов, | Объединения (union) позволяют определить свой тип данных и хранят набор элементов, | ||
| - | {{fixme}} | + | определение |
| + | <code c> | ||
| + | union ascii { | ||
| + | int digit; | ||
| + | char letter; | ||
| + | }; | ||
| + | </ | ||
| + | |||
| + | {{: | ||
| + | |||
| + | Длина элементов может быть разной, | ||
| + | |||
| + | При определении переменной объединения мы ее можем сразу инициализировать, | ||
| + | <code c> | ||
| + | union ascii code = {120}; | ||
| + | </ | ||
| + | |||
| + | Стоит отметить, | ||
| + | |||
| + | Объединения синтаксически сохожи с struct и enum и могут быть анонимными или иметь псевдонимы. | ||
| + | |||
| + | <code c> | ||
| + | // псевдоним объединения | ||
| + | typedef union ascii { | ||
| + | int digit; | ||
| + | char letter; | ||
| + | } ascii_code; | ||
| + | |||
| + | // псевдоним анонимного объединения | ||
| + | typedef union{ | ||
| + | int digit; | ||
| + | char letter; | ||
| + | } ascii_code; | ||
| + | </ | ||