linux 下C在开发板上发现内存泄露怎么办?
我copy了一部分别人的程序,在开发板上运行一段时间后发现有内存泄露的提示,这个该怎么办,也没调试工具,只能加打印信息。
帮你顶一下.这么重要的帖子可不能沉下去了.
建议使用工具检查,有一些内存泄漏检查工具的.
最好安装上调试工具.自己调试过程中,会学习很多东西.
能出现内存泄漏的情况也是有自由分配区的内存了,malloc()函数或者new操作符分配的内存了。
如果没有好的工具用的话,看看代码,看哪些有程序分配的内存没有释放掉,然后一个个释放掉,呵呵
up!
呵呵,实在不行,就使用“目测法”吧
代码里面只有进程启动的时候用到malloc,并且只用一次,我在进程结束的时候free(但是在运行过程中泄露)
其他地方就没再用malloc 也没用过 realloc ,calloc ,strdup
更没用过new
请问还有哪些函数可能导致内存泄露?谢谢
内存泄漏只可能出现在自由分配区,也就是堆块那里,是由程序员自己分配的。其他的地方出现的内存损耗就不能称是内存泄漏了。
我没看过还有其他函数能分配内存了(c语言)。建议还是仔细检查一下代码
用大脑仿真,如果有代码,早晚都能“仿”出来。
是不是运行过程中反复多次申请释放? 如果这样的话是不是因为产生了内存碎片?
代码不多的话直接Review!
自己写段小代码统计ma
相关问答:
13个人围成一圈,从第一个人开始顺序报号1,2,3。凡报到3者退出圈子,找出最后留在圈子中的人原来的序号
结果应该是13 可我的程序的结果是11 希望好心人帮改一下
#include <stdio.h>
#include < ......
为什么C写的DLL文件C、PB能调用VB不能调用?
VB里为什么有的DLL直接通过引用可以使用?有的需要通过declare申明外部函数?这些DLL有什么差别?
1、为什么PB能通过DECLARE声明而VB不行?
2、如果这个dll中的 ......
用这本书入门怎么样呢 跟谭浩强的相比如何? 谢谢
我把这本看了几篇,确实很好的书。就不要拿它跟 谭 的书比了, 谭 的书要照顾全国读者。
不可同日而语
一个是国外的,一个是国内的
学完c primer ......
功能是实现字符串的翻转,不知道哪里有错误,请指教
#include <iostream>
#include <stdio.h>
using namespace std;
void reverse()
{
char ch;
scanf("%c",ch) ......