Czy poprawne jest używanie pól bitowych z unią?

Użyłem pola bitowego o takiej strukturze,

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

Teraz zastanawiałem się, czy można to zrobić za pomocą unii, więc zmodyfikowałem kod, jak,

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

Znalazłem pole bitowe za pomocą funkcji union, ale wszystkie te pola w unii są podane do pojedynczego bitu, jak zrozumiałem z wyjścia. Teraz widzę, że nie jest błędem używanie pól bitowych z unią, ale wydaje mi się, że używanie tego w ten sposób nie jest poprawne pod względem operacyjnym. Jaka jest więc odpowiedź - czy ważne jest użycie pola bitowego z unią?

questionAnswers(2)

yourAnswerToTheQuestion