/***************************************************************/ /* Prof. Dr. Carsten Vogt */ /* FH Koeln, Fak. 07 / Nachrichtentechnik */ /* http://www.nt.fh-koeln.de/vogt */ /* */ /* Beispielprogramm p04050202.c */ /* aus "C fuer Java-Programmierer", Hanser-Verlag */ /* */ /* Demonstriert wird die Arbeit mit Bitfeldern. */ /***************************************************************/ #include int main(void) { struct bitfeld { unsigned int flag0 : 1; unsigned int flag1 : 1; unsigned int flag2 : 1; unsigned int flag3 : 1; unsigned int flag4 : 1; unsigned int flag5 : 1; unsigned int flag6 : 1; unsigned int flag7 : 1; } bf; bf.flag3 = 0; bf.flag4 = 1; printf("Groesse von bf: %d Byte\n\n",sizeof(bf)); printf("bf.flag3: %d\n\n",bf.flag3); printf("bf.flag4: %d\n\n",bf.flag4); if (bf.flag3) printf("flag3 gesetzt\n\n"); else printf("flag3 nicht gesetzt\n\n"); if (bf.flag4) printf("flag4 gesetzt\n\n"); else printf("flag4 nicht gesetzt\n\n"); return 0; }