我试图通过在与 free() 函数一起使用后删除一个变量来释放 RAM,但我的 RAM 没有清理。我想没有垃圾清理发生?在我退出代码段(作用域 if 语句、while 循环或函数)后,空间会被清理,但 free() 语句本身不会。
我正在执行以下操作来检查 RAM:
int freeRam () {
extern int __heap_start, *__brkval;
int v;
return (int) &v - (__brkval == 0 ? (int) &__heap_start : (int) __brkval);
}
此外,如何“释放”这样的内存?