SDL_Event является объединением 8-битного типа без знака и многими структурами, чей первый элемент представляет собой неподписанный 8-битный тип. Рекомендуемое использование - это доступ к элементу Uint8 союза для определения типа события, а затем доступа к объединению элементом, соответствующим этому типу.Является объединением структур, разделяющих неопределенное поведение первого элемента?
Это, очевидно, зависит от всех типов в союзе, имеющих одинаковое пространство, зарезервированное для идентификатора типа. Можем ли мы быть уверенными, что это так, или это неопределенное поведение?
Редактировать: сделал заголовок более наглядным.
Что такое «идентификатор типа», о котором вы говорите? 'Uint8_t' или что-то еще? C не сохраняют свой тип. –
@R .. Да, Uint8, который, я считаю, typedef'd для uint8_t. –