所以我有几个结构......
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 分配足够的内存,以便为字符串提供足够的内存?理想情况下,我只想去:
- 在 pNewStruct 分配 29 个字节;
- memcpy 从缓冲区到 pNewStruct;
谢谢,