struct {
type [member_name] : width ;
};
struct {
unsigned int age : 3;
} Age;
[dywang@deyu zzz]$ vim struct4.c
[dywang@deyu zzz]$ cat struct4.c
#include <stdio.h>
#include <string.h>
struct {
unsigned int age : 3;
} Age;
int main () {
Age.age = 4;
printf( "Sizeof( Age ) : %d\n", sizeof(Age) );
printf( "Age.age : %d\n", Age.age );
Age.age = 7;
printf( "Age.age : %d\n", Age.age );
Age.age = 8;
printf( "Age.age : %d\n", Age.age );
return 0;
}
[dywang@deyu zzz]$ gcc -o struct4 struct4.c struct4.c: In function ‘main’: struct4.c:16:2: warning: large integer implicitly truncated to unsigned type [-Woverflow] Age.age = 8; ^
[dywang@deyu zzz]$ gcc -o struct4 struct4.c
[dywang@deyu zzz]$ ./struct4 Sizeof( Age ) : 4 Age.age : 4 Age.age : 7