gpt4 book ai didi

c - 内存分配和释放

转载 作者:太空宇宙 更新时间:2023-11-04 05:45:54 24 4
gpt4 key购买 nike

是否可以通过任何 Windows API 分配 7 个字节的内存并释放前 3 个字节以形成一个 4 字节的 block 。

最佳答案

您可以使用 memmove() 将最后四个字节移动到分配 block 的开头,然后使用 realloc() 将其缩小为四个字节。

但是为什么你会想要呢?你总是可以有另一个指向分配内存的最后四个字节的指针,如下所示:

typedef unsigned char uint8;

uint8* psevenbytes = (uint8*)malloc(sizeof(uint8) * 7);

if (psevenbytes != NULL)
{
uint8* pfourbytes = psevenbytes + 3;

// ... do stuff

free(psevenbytes);
psevenbytes = NULL;
}

或者您可以使用结构

关于c - 内存分配和释放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5273331/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com