如何判断指针/地址是否动态分配?

吉菲吉

我正在尝试减轻内存泄漏。
显然,最好的解决方案是首先不要泄漏内存。

但就我而言,我需要查看现有的指针,并确定其中的任何指针是否是动态分配的,是否需要删除。

给定特定的地址/指针,C ++是否提供确定给定地址是否指向堆的方法?

奖金:
C ++是否提供一种方法来确定是否需要使用delete[]vs平原删除给定的堆地址delete

多伦

在C ++(和C)中,指针指向任何地址。要知道您要指向的内存类型,您需要查看进程内存映射。这将是特定于平台的。

在Linux上,/proc/<pid>/maps文件包含此信息。

但是,即使指针指向堆,如果它是新指针的增量(认为是数组),或者是使用malloc代替分配的,它仍可能无法删除new

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

动态分配和指针

来自分类Dev

如何在我指向的地址上动态分配内存?

来自分类Dev

如何初始化不同动态分配地址的向量

来自分类Dev

如何删除指向动态分配对象的指针数组

来自分类Dev

如何判断指针是指向堆栈还是指向堆?

来自分类Dev

动态分配地图指针值

来自分类Dev

std :: copy用于动态分配的指针

来自分类Dev

删除动态分配的数组与单个指针

来自分类Dev

在结构中动态分配**指针

来自分类Dev

C 指针和动态分配

来自分类Dev

当对象不是动态分配的(不是指针)时,是否可以从超类对象转换为子类?

来自分类Dev

我是否必须“拥有” free()静态动态分配的指针?

来自分类Dev

是否动态分配字符串?

来自分类Dev

是否动态分配PCIe通道?

来自分类Dev

如何在C ++中正确管理动态分配的指针数组?

来自分类Dev

如何将指针传递给函数并在函数C ++中动态分配内存

来自分类Dev

如何在结构数组中初始化和动态分配int指针成员?

来自分类Dev

如何动态分配valdr规则?

来自分类Dev

如何扩展动态分配的数组

来自分类Dev

如何动态分配参数值

来自分类Dev

如何制作动态分配的结构数组?

来自分类Dev

如何释放动态分配的向量?

来自分类Dev

我如何动态分配属性

来自分类Dev

如何动态分配全局 int*?

来自分类Dev

从动态分配的指针数组打印时出错

来自分类Dev

向前声明并动态分配该声明类的指针数组?

来自分类Dev

动态分配一个指针并集-C

来自分类Dev

C中的FILE指针是动态分配的吗?

来自分类Dev

使用指向结构C ++的指针创建动态分配的数组