/* Ejemplo del estructura con tamaņos fijados en bits */ struct RegBUS { unsigned short activo : 1; unsigned short modo : 3; unsigned short : 4; /* Campo sin nombre */ unsigned short dirA : 4; unsigned short dirB : 4; unsigned short Dato1; /* 16 bits por defecto */ }; void ComandoTargeta ( struct RegBUS *rcpu ) { rcpu->activo = 0; rcpu->modo = 0x01 | 0x04; // Activo el bit 1 y el 3 /* Mas operaciones */ } main() { struct RegBUS R1; printf("El tamaņo de la variable es %d bytes \n",sizeof(R1) ); R1.activo = 1; R1.dirA = 0x0A; R1.dirB = 6; R1.Dato1 = 89; ComandoTargeta ( &R1 ); getchar(); }