[an error occurred while processing this directive]
намекает, что нужно определить стуктурный тип выше объединения...
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено DaoLi 06 августа 2002 г. 15:05
В ответ на: Ответ: отправлено Chanel 06 августа 2002 г. 14:53

"Особенности" компилятора не позволяют описывать структуру внутри объединения. Того же эффекта можно добиться если написать, например так:
typedef struct {
byte flag_1;
byte type;
byte data[20];
word crc;
byte flag_2;
} packet_struct;

union {
packet_struct p;
byte b[25];
} rx_array;

доступ к элементам соответственно:
rx_array.b[0] = 0;
rx_array.p.crc = 0;

Должно работать.

Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru