это дело привычки. Привыкнешь и будешь считать что так и надо. это
из той же серии кто то считает, что сравнение с нулем повышает
наглядность кода if(var == 0) EQ if(!var)
if(var != 0) EQ if(var)
зато подход без юнионов не загромождает структуру данных, где народ юнионов понавтыкает и собственно данных не найдешь
еще любят юнионом uint на 2 байта делить/
Ну да ладно кому как нравится. тот так и пишет.
ЗЫ:
вот такие у нас есть любители
typedef union __attribute__((packed))
{
uint8_t all;
struct
{
uint8_t packetType:4;
uint8_t :4;
}bits;
}tl_osQueueFieldStatusT;