ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Пятница
29 марта
1008056 Топик полностью
кaлян (31.05.2020 15:29, просмотров: 15) ответил VLLV на Эфемерное "good practice" в программировании на С: Данность : есть массив[x] массивов[3]. Эти три байта на самом деле битовая структура, но для экономии места обрезали один байт. Как сделать доступ к полям структуры по индексу из нескольких мест? Два варианта:
я бы сделал (и делаю) прямой как шпала тайпкаст 
typedef struct{
  uint8_t a;
  uint8_t b;
  uint8_t c :4;
  uint8_t d :4;  
}SomeType;

uint8_t * arr[1024] ={0};

void foo(void){
  int sum;
  SomeType * pt;
 
  pt = (SomeType*) &arr[7];
  sum = pt->a + pt->d;
}