bitfields question

Could you please explane to me why the output of this code is 12 (1100b)

and how the sizeof(bit1) is 4byte???

[code]1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include
#include
void main()
{
struct bitfield
{
unsigned a:5;
unsigned c:5;
unsigned b:6;

};
char *p;
struct bitfield bit1={1,3,3}; //a=00001 ,c=00011 ,b=000011
p=&bit1; // p get the address of bit1
p++; // incriment the address of p in 1

printf("%d
",*p);
printf("%d
",sizeof(bit1));

}[/code]
Sign In or Register to comment.

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Categories