Extern union

Lolita
17 de Noviembre del 2009
Quiero declarar una union como externa para poderla utilizar en distintos archivos .c. Mi código es:
union byteT{
unsigned char flags;
struct{
unsigned char b0 : 1;
unsigned char b1 : 1;
unsigned char b2 : 1;
unsigned char b3 : 1;
unsigned char b4 : 1;
unsigned char b5 : 1;
unsigned char b6 : 1;
unsigned char b7 : 1;
}bits;
};
extern union byteT variable;
Y en cada .c pongo:
extern union byteT variable; pero no compila bien, me aparece el error:"Ilegal storage class".
Ayuda. Gracias

Capitan Kirk
17 de Noviembre del 2009
En las estructuras de campos de bits, no se pone el tipo, simplemente unsigned:
struct {
unsigned b0 : 1;
unsigned b1 : 1;
// etcetera...
}
bit_field;

Saludos,