C IAR工作台内存泄漏分析(EWARM)

C IAR工作台内存泄漏分析(EWARM),c,memory-leaks,arm,valgrind,iar,C,Memory Leaks,Arm,Valgrind,Iar,我最近购买了用于ARM(EWARM)的IAR工作台IDE。我的许可证不包括执行内存泄漏检查的C-RUN。是否可以使用第三方工具(如Valgrind)来执行内存泄漏分析?如果您的程序不包含符合标准的main入口点,我不明白为什么不链接就无法编译它(例如gcc-c your_file.c)然后将一个符合标准的main入口点链接到它,该入口点执行一系列任务并按程序的要求退出。。。然后,您可以在valgrind将运行的任何PC上使用valgrind运行这些测试用例 如果存在特定于平台的功能,那么,我所见

我最近购买了用于ARM(EWARM)的IAR工作台IDE。我的许可证不包括执行内存泄漏检查的C-RUN。是否可以使用第三方工具(如Valgrind)来执行内存泄漏分析?

如果您的程序不包含符合标准的
main
入口点,我不明白为什么不链接就无法编译它(例如
gcc-c your_file.c
)然后将一个符合标准的
main
入口点链接到它,该入口点执行一系列任务并按程序的要求退出。。。然后,您可以在valgrind将运行的任何PC上使用valgrind运行这些测试用例


如果存在特定于平台的功能,那么,我所见过/参与过的大多数sane项目都有办法将这些功能分离为特定于平台的代码,同时将可移植的、符合标准的代码放在一起(例如,在
库中
)。为了您的利益,我希望您的程序在开发时考虑到可移植性,因为这将使此类测试用例易于开发和运行。

如果您的工具在其动态内存实现中没有提供堆调试功能,您可以尝试用提供这些功能的库来替换它们


dmalloc()是一个免费的例程库,提供动态分配的堆区域围栏和观察释放的块访问等功能。

?(我自己没用过)你确定你需要这个吗?当我们使用低端武器时(我在IDE上找不到C-RUN的位置,我在工具或项目菜单上看不到任何分析选项。我想做与Valgrind类似的分析,看看代码上是否有内存问题。我的许可证上说我有C-RUN,但不知道如何使用它。实际上,我的许可证中没有C-RUN,我会更新问题,感谢you@Micheled“阿米科,我试过了……谢谢你的夸奖:)