我想在堆上分配一些无法从任何堆栈指针访问的内存.(这是出于测试目的).
void *ptr = malloc(sizeof(int));
void *ptr2 = malloc(sizeof(int));
ptr = ptr2;
Run Code Online (Sandbox Code Playgroud)
如果我执行此代码,我认为ptr和ptr2在开始时是堆栈上的两个指针,指的是堆上的一些已分配的内存,对吧?然后当我执行ptr = ptr2时,第一个mallocated内存仍然在堆上但不能以任何方式从堆栈中到达.是这样吗?
我有一个程序正在搜索堆栈以查找堆上的所有活动对象,因此我想测试它实际上是否有效.
| 归档时间: |
|
| 查看次数: |
69 次 |
| 最近记录: |