Допустимо ли использовать битовые поля с объединением?

Я использовал битовое поле с такой структурой,

struct
{
       unsigned int is_static: 1;
       unsigned int is_extern: 1;
       unsigned int is_auto: 1;
} flags;

Теперь мне стало интересно, можно ли это сделать с помощью объединения, поэтому я изменил код, например,

union
{
       unsigned int is_static: 1;
       unsigned int is_extern: 1;
       unsigned int is_auto: 1;
} flags;

Я обнаружил, что битовое поле с объединением работает, но все эти поля в объединении задаются одним битом, как я понял из вывода. Теперь я вижу, что использование битовых полей с объединением не является ошибочным, но мне кажется, что это неправильно с точки зрения эксплуатации. Итак, каков ответ -, допустимо ли использовать битовое поле с объединением?

10
задан timrau 14 August 2012 в 17:34
поделиться