五、文件描述符问题在上面的内存问题表中,对于大多数的内存问题来说,相信对于熟悉C/C++的程序员,并不陌生。有一些关于Watchpoint和文件描述符的内容,可能会让你看得比较模糊,对于Watchpoint,我会在后面讲述。这一节,我就一个示例说一说文件描述述问题是如何产生的,并由此介绍一下Purify的一些特性。先查看下面这段程序:#include main(){FILE*fp;intnum;fp=fopen("./test.txt","r");if(fp==NULL){perror("Error:");exit(-1);}fscanf(fp,"%d",#);i
1
北京火龙果软件工程技术中心(haoel原作)三、          示例假设我们现在有这样一段程序:hello.c#include#include staticchar*helloWorld="Hello,World"; main(){  char*mystr=malloc(strlen(helloWorld));   strncpy(mystr,helloWorld,12);  printf("%s\n",mystr);} 很明显,这段程序中有内存上的错误,假设我们疏忽了这些错误,当我们使用Purify进行测试时,我们会发现这段程序中的内存错误在Puri
1
一、引言我们都知道软件的测试(在以产品为主的软件公司中叫做QA—QualityAssessment)占了整个软件工程的30%-50%,但有这么一种说法,即使是最优秀测试专家设计出来的测试案例,也无法彻底地检测到内存上的问题。使用C/C++开发的团队一定有被其内存问题折磨过的经历,内存问题一直是C/C++开发人员的心头之痛。特别当程序越来越多时,类的继承和关联越来越多时,内存问题也就越来越多,很多时候,开发人员在不经意的时候就带入了内存问题。这是C/C++世界中很难避免的东西,哪怕是有10年以上开发经验的老手,也难以避免或是杜绝内存问题。而且,内存的问题是让人很难察觉的,特别是对于内存问题排名第
2021-02-04 18:12:36 384KB C/C++内存问题检查利器—Purify
1