free(str);
printf("%d\n", str->listeners);
对 printf 的调用成功(对 str 成员的任何其他调用也是如此)。这怎么可能?
最佳答案
给你打个比方:假设你租了一间公寓(那是内存),你终止了租约但保留了 key 的副本(那是指针)。如果公寓没有被拆除,如果锁没有换过等等,您可能稍后可以回到公寓,如果您立即这样做,您可能 按照您离开时的方式查找内容。但这是一个非常糟糕的主意,在可能的情况下,您会让自己陷入一大堆麻烦中......
关于c - free() 不释放内存?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10473116/