相关疑难解决方法(0)

释放内存后我们如何访问指针?

按照我的理解,

free() 用于释放我们之前使用 malloc 分配的内存。

在下面的代码片段中,我释放了分配的内存。但是即使在释放后我也能够访问指针?怎么可能?

免费在内部如何运作?

#include<iostream>
using namespace std;

int main()
{
   int *p=(int *)malloc(sizeof(int));
   *p=17;
   free(p);
   *p=*p+1;
   printf("\n After freeing memory :: %d ",*p );
   return 0;
}
Run Code Online (Sandbox Code Playgroud)

c malloc free pointers

3
推荐指数
1
解决办法
1106
查看次数

标签 统计

c ×1

free ×1

malloc ×1

pointers ×1