size of bit field

N

Nikolay Moskvichev

Hello All.

size of this bit_field is 2 for gcc or borland, and 4 for msvc 2008
and 2010.
Can you please explain me this behaviour?


#include <iostream>
#pragma pack(push,1)

struct bit_field {
unsigned f1 : 5;
unsigned f2 : 4;
unsigned f3 : 7;
};

#pragma pack(pop)

int main()
{
std::cout<<sizeof(bit_field)<<std::endl;
}

Thanks.
 
I

Ian Collins

Hello All.

size of this bit_field is 2 for gcc or borland, and 4 for msvc 2008
and 2010.
Can you please explain me this behaviour?


#include<iostream>
#pragma pack(push,1)

This is compiler specific, so you would be better off asking on a more
specialised group.

My *guess* is that the directive is ignored by msvc.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,768
Messages
2,569,574
Members
45,048
Latest member
verona

Latest Threads

Top