ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Суббота
20 июля
1329640 Топик полностью
POV (12.07.2023 12:18 - 12:21, просмотров: 106) ответил sav6622 на Вот так обьявляется.
А чем обусловлена такая запись (см. тело сообщения)? И прям FrameC frame_control проглатывается без typedef? 
struct FrameC
{
uint8_t type : 3;
bool request : 1;
bool enabled : 1;
uint8_t _unused_1 : 3;
uint8_t _unused_2 : 3;
uint8_t ttl : 5;
};

Компилятор запросто поля перетусует, лишнего навставляет для своего удобства. КМК.


Не лучше ли одну переменную на битовые поля разбить?

struct FrameC
{
uint16_t type : 3,
   request : 1,
   enabled : 1,
   _unused_1 : 3,
   _unused_2 : 3,
   ttl : 5;
};