Здравствуйте, Zlon, Вы писали:
Z>struct Frame {
Z> unsigned char Sync;
Z> double Temper;
Z> };
Z>В таком виде sizeof(Frame) дает 16
Z>struct Frame {
Z> //unsigned char Sync;
Z> double Temper;
Z> };
Z>так 8
Z>struct Frame {
Z> unsigned char Sync;
Z> //double Temper;
Z> };
Z>А так 1.
Z>Почему выравнивание производится по размеру типа double
. Из-за этого немогу нормально прочитать структуру из файла. Помогите плз.
Выравнивание устанавливается так:
#pragma pack(push,1)
struct Frame
{
unsigned char Sync;
double Temper;
};
#pragma pack(pop)