是否有任何类似 malloc/realloc/free 的实现,我可以在其中指定一个内存区域来管理内存分配?
我的意思是常规的 malloc(等)函数只管理堆内存区域。 如果我需要在共享内存段或内存映射文件中分配一些空间怎么办?
最佳答案
不是 100%,根据你的问题,你想维护你自己的内存区域。所以你需要自己的 my_malloc
、my_realloc
和 my_free
Implementing your own
my_malloc
may help youvoid* my_malloc(int size) { char* ptr = malloc(size+sizeof(int)); memcpy(ptr, &size, sizeof(int)); return ptr+sizeof(int); }
This is just a small idea, full implementation will take you to the answer.
用同样的方法实现my_realloc
和my_free
关于自定义内存区域的 c malloc 功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35082100/