如果我的程序代码片段如下所示:
这意味着每次循环while循环时,我都会重新分配100个字节,并由节点指针指向对应内存地址,是吗?
如果是这样的话,那么如果我只有一个指向最后一次malloc的指针,我该如何释放使用所有循环创建的内存?
谢谢!
struct Node *node;
while(...){
node = malloc(100);
//do stuff with node
}
这意味着每次循环while循环时,我都会重新分配100个字节,并由节点指针指向对应内存地址,是吗?
如果是这样的话,那么如果我只有一个指向最后一次malloc的指针,我该如何释放使用所有循环创建的内存?
谢谢!
malloc
都必须与一个free
配对"的经验法则是有原因的。 - user395760