Итак, у меня есть пара структур...
struct myBaseStruct
{
};
struct myDerivedStruct : public myBaseStruct
{
int a, b, c, d;
unsigned char* ident;
};
myDerivedStruct* pNewStruct;
... и я хочу динамически выделять достаточно места, чтобы я мог "memcpy" в некоторых данных, включая строку с нулевым завершением. Размер базовой структуры, по-видимому, равен «1» (я предполагаю, что он не может быть равен нулю), а размер производной структуры равен 20, что кажется логичным (5 x 4).
Итак, у меня есть буфер данных размером 29, первые 16 байтов — это целые числа, а остальные 13 — строка.
Как выделить достаточно памяти для pNewStruct, чтобы хватило на строку? В идеале я просто хочу пойти:
- выделить 29 байт в pNewStruct;
- memcpy из буфера в pNewStruct;
Спасибо,