Quantcast
Channel: Programmers Heaven Forums RSS Feed
Viewing all articles
Browse latest Browse all 2703

bitfields question

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

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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <stdio.h>
#include <stdlib.h>
 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\n",*p); 
printf("%d\n",sizeof(bit1));             
}


Viewing all articles
Browse latest Browse all 2703

Trending Articles