我在内存管理任务中编写calloc函数(我正在使用C).我有一个问题,我编写了malloc函数并考虑将其用于calloc,因为它说calloc将获取num和size并返回一个内存块(num * size),我可以使用malloc来创建它
如果您需要更多信息,请问我:)
因此malloc将返回一个指针(Void指针)到第一个可用内存,我必须通过字节,将它们初始化为零,并将指针返回到可用内存的前面.
我假设你不能使用memset,因为它是一个家庭作业任务分配,并处理内存管理.所以,我只是进入循环并将所有字节设置为0.伪代码:for i = 1 to n: data[i] = 0
哦,如果你无法理解如何取消引用void *,请记住你可以这样做:
void *b; /* now make b point to somewhere useful */ unsigned char *a = b;