[英]malloc and free when using reassign pointer
请,如果我错了,请纠正我。 在下面的伪代码中,我为j
创建空间。 最后,我需要释放空间。 但是,如果将j
重新分配给另一个变量,则释放变量anotherJob
语句是不好的,无论如何我都会遇到j
内存泄漏,因为代码正在释放anotherJob
。 我是正确的?
j=malloc(sizeof(struct jobDetails));
...
j=anotherJob;
...
free(j);
是的,你是对的。 除非您将j
的原始值保存在其他地方,否则它将泄漏。 您可能不想在这里释放anotherJob
,因为您不知道它来自何处,或者是否会在其他地方释放。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.