Здравствуйте, B0FEE664, Вы писали:
BFE>Допустим у меня есть предзаказанный буфер длиною N и я хочу внутри него разместить несколько разных экземпляров разных структур. Как это сделать правильно?
BFE> pBuffer->tail += sizeof(MyStruct); // _Alignof(MyStruct) ?
У вас размер структуры должен быть выравнен (paddings). Достаточно что бы начало вашего региона было выравнено.
А так можете вручную выравнивать если память линейная
#define align(x,n) ((char*)(x)+(-(int)(char*)(x)&(n-1)))