Чтобы предотвратить оптимизацию компилятором выравнивания членов структуры:
#pragma pack(push, 1)
struct foo {
...
};
#pragma pack(pop)