- 博客(11)
- 收藏
- 关注
原创 在ubuntu上安装和使用valgrind
valgrind三大利器:内存错误检测器时间剖析器空间剖析器其中又数“内存错误检测器”最为强大。 下面介绍如何在ubuntu上安装和使用valgrind。步骤一:确保valgrind已被安装sudo apt-get install valgrind步骤二:去除所有旧的valgrind日志rm valgrind.log.*步骤三:在命
2008-12-31 00:45:00 11007 1
原创 近日遇到的低级问题
1,TRACE输出信息跟不上for循环的问题;2,释放内存空间中delete和delete[]的区别;3,Domoal问题,check框(必须生成函数)中打勾后弹出另一个对话框的问题。4,释放没有开辟的内存空间问题。
2008-12-29 11:03:00 828
原创 从网上整理的关于gprof报“no accumulated time”的原因
Hi.I am trying to debug a problem with a certain running program, and Ive been asked to provide the developer with the gprof output. Unfortunately, when I do this, the timing information is always
2008-12-23 23:17:00 3091
原创 C 语言中的指针和内存泄漏
几种问题场景:(1)未初始化的内存良好实践:始终结合使用 memset(立刻将内存中的数据初始化为0)和 malloc,或者使用 calloc。(2)内存覆盖良好实践:每当向指针写入值时,都要确保对可用字节数和所写入的字节数进行交叉核对。一般情况下,memcpy 函数将是常见的检查点。(3)内存读取越界良好实践:读取之前检查字节长度。(4)内存泄漏 a:已赋值的内存指针在释放内存之
2008-12-21 21:32:00 834
原创 几个关于GNU gprof的介绍文章
http://www.cs.utah.edu/dept/old/texinfo/as/gprof.html#SEC3 http://www.linuxfocus.org/ChineseGB/March2005/article371.shtml http://hi.baidu.com/juventus/blog/item/312dd42a0faf169b033bf6ff.html h
2008-12-21 19:25:00 498
原创 fatal error C1033 cannot open program database "vc60 pdb"
编译通不过有人说不要用中文目录。虽然有人说改用英文目录就没问题了。但是没道理阿,之前好好的,添了一条语句之后就出现该问题了。有人说重启VC,自己试了一下可以。
2008-12-19 16:37:00 1853
原创 除法如何舍入?--摘自《C语言陷阱和缺陷》
假设我们用b除a得到商为q余数为r:q = a / b;r = a % b;我们暂时假设b > 0。我们期望a、b、q和r之间有什么关联?最重要的,我们期望q * b + r == a,因为这是对余数的定义。 如果a的符号发生改变,我们期望q的符号也发生改变,但绝对值不变。、我们希望保证r >= 0且r 这三点清楚地描述了整数除法和求余操作。不幸的是,它
2008-12-19 15:43:00 1248
原创 输入法捣鬼
复制一个网络路径,汉字在程序对话框(MFC)上总是显示成“ ?”原先估计是picture服务器和本地系统字体不兼容问题,后来的解决办法是,在拷贝汉字路径的时候,将输入法切换成中文。这让我想起来,以前在编译还是安装某个程序的时候(具体记不清楚了), 也是因为输入法的问题,导致出问题。后来找了半天,才发现是输入法捣得鬼。 问题是,以后写程序的时候怎样才能避免这个问题呢
2008-12-19 14:03:00 441
转载 gcc warning: no newline at end of file
初学gcc的人通常会遇到这种警告:main.c :10:2 warning: no newline at the end of file修复这个警告,在文件结尾回车一下就行了。可以很少会有人去仔细探究,为什么gcc会给出这么一个警告?原因其实也很简单,因为标准规定如此。C99第5.1.1.2节这样写道: Each instance of a backslash characte
2008-12-17 11:42:00 2387
转载 Linux下用Valgrind防止内存泄露
用C/C++开发其中最令人头疼的一个问题就是内存管理,有时候为了查找一个内存泄漏或者一个内存访问越界,需要要花上好几天时间,如果有一款工具能够帮助我们做这件事情就好了,valgrind正好就是这样的一款工具。 Valgrind是一款基于模拟linux下的程序调试器和剖析器的软件套件,可以运行于x86, amd64和ppc32架构上。valgrind包含一个核心,它提供一个虚拟的CPU运行程
2008-12-17 11:19:00 501
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人