я следующее объединениеСколько памяти союз нужно
typedef union rem{
int addr;
char addrbuf[32];
} foo;
SizeOf на объединении дает следующий вывод
foo addr;
printf("size is: %d\n",sizeof addr);
размер составляет: 32
Означает ли это, что союз выделяет или нуждается в памяти, равной наибольшему элементу в объединении при определении?
Да. Зависит от члена максимального размера. –
Да, до выравнивания. –
Действительно ли вы определяете экземпляр объединения или сопоставляете указатель на структуру, содержащую этот союз, где первый член структуры (m_eAddrType) сообщает вам, как интерпретировать следующий член структуры, который является этим объединением (т.е. посмотрите. addr vs. глядя на .addrBuff? Я реализовал эту структуру данных «вариант записи», используя структуру, содержащую объединение. – franji1