memory-leaks相关内容
我使用的是Dijkstra算法用邻接表
..
我实施一个链表,它需要有一个给定的一个链表和一个CString的头部时,它找到一个功能和删除,其值是:字符串。一个节点 typedef结构节点 { CHAR入口[21]; 结构节点*接下来的; }节点; / *如果与短语值节点中找到返回true,否则为false * / 布尔findAndRemove(节点*根,焦短语[21]) { 如果(根!= NULL) {
..
我一直对我们的项目运行Valgrind的,和的valgrind已经报告说内存已经从一个电话输给的getaddrinfo,尽管freeaddrinfo已经叫在函数的底部。任何想法可能会导致什么呢? INT tcp_connect(字符*地址,字符*口) { //的printf(“%S \\ n”,地址); INT状态,的sockfd; 结构addrinfo中的提示,* servi
..
的内存块,可静态分配,在堆栈或堆中。我想知道的路要走,如果一个指针指向堆检测。我与Windows和Linux工作,它是没有问题的为每个OS不同的解决方案。我用GCC和MinGW。 如果我能知道在哪里堆开始,在哪里结束,我认为这个问题是可以解决的。我认为,我可以检测底部和堆栈,以了解是否该块是在堆栈的顶部,但是,如果有多个线程,则有多个栈。连我自己都知道哪里是静态存储器,我想我会与共享库的静态存储
..
我有以下code。 无效* timer1_function(无效* EIT); 定时器1的pthread_t; INT thread_check1 = 0;line72:thread_check1 =在pthread_create(安培;定时器1,NULL,timer1_function,NULL); Valgrind的显示下面的输出,并说有在问题行72 。什么是错与上面的在pthread
..
我有以下情形,在C实现与pthreads的: 在主线程(T1)创建另一个线程(T2),它等待的事件。 在事件T2调用树遍历 recusive 的函数,它接受一个函数指针的动作被树节点上执行。在树的遍历,如果节点找到了FN指针被解雇,创建一个线程(T3),服务节点,应该是正常消亡。 我观察到来自T3的堆栈一个巨大的内存泄漏。在Valgrind的告诉我, == == 9251在20块2,72
..
我知道这是不是一个新问题,但我没有发现任何其他地方工作。 我有一个C程序因为它运行平稳吃记忆 - 我用的是'自由'命令跟踪它,我可以看到,只要它执行可用内存量正在减少,这不应该发生。但是,我无法找到,可能会造成这个程序本身什么。我也用的valgrind和dmalloc对其进行了测试,其中幽冥能够探测到任何记忆丧失。 我如何找到泄漏? 解决方案 如果你不确定的您的内存使用情况,也许它
..
作为SO本身。其惊人的工具,建议由某人我一直在使用的valgrind 开始仅仅一天前,但今天我有一个问题与it.It提供了以下错误:肯定失去了字节,但无法分辨错误的位置 下面是输出的valgrind : udit @ udit-Dabba〜$的valgrind --leak检查=全sendip -v -p的IPv6 -f file.txt的-6S :: 1 -p啊-as 0x20的-aq
..
嘿,我想的NSString转换为使用cStringUsingEncoding C字符串,但我有一个内存泄漏。我的理解是cStringUsingEncoding返回一个指向一个字符数组只能保证为的NSString对象的持续时间存在。因此,你应该将其内容复制到另一个字符串。这里就是我的问题所在... 我必须接受一个NSString,并把它变成一个C字符串拷贝的功能。只是为了测试我跑了下面的方法100
..
我一直工作在学校的一个项目(由于今晚!),和我有一些严重的内存问题。我是相当新的C和我仍然被抛出了一个循环,当谈到mallocing指针和诸如此类的东西,所以我真的可以使用一些帮助。 在code如下。该文件的顺序是LinkedLists.h(标题为链表模块),LinkedLists.c(链表模块),和TestList.c(主模块)。 / ********* *****************
..
以下是旨在利用可变长度不变char和打印出来的用于记录一个不错的格式。我相信读者会对这可怎么改进建议,我表示欢迎。 令我百思不解的是,我希望这将是必要的free()的返回静态字符每次ToHexString()被调用。相反,我认为没有内存泄漏任何责任。即使寿我使用函数内联,因此不其返回值赋给一个变量。 我创建了一个简单的测试,在循环中调用此功能,用不同长度的CString和nMaxChars参数
..
我有一个函数foo(),它分配内存,并返回它。它是标准的做法让我在我的主要函数的最后释放呢? 的char * foo的(){ 字符* P; P =的malloc(sizeof的(字符)* 4); / *编辑 - 感谢味精板* / P [0] ='一'; P [1] ='B'; P [2] ='c'的; P [3] ='/ 0'; / *编辑:感谢味精板。 * / 回磷; }INT主(I
..
我使用的是OS X 10.8.1,山狮Valgrind的版本3.8.0。关于与10.8.1的兼容性, Valgrind的的网站说(斜体矿): 的 Valgrind的3.8.0作品上的{X86,AMD64} -darwin键(Mac OS X 10.6和10.7,与10.8的支持有限)。 我知道的话,就只有“有限支持”10.8.1。尽管如此,这个bug报告说(斜体矿): 此的(
..
我有以下的code,以及由于某种原因Valgrind的发现在getlogin()函数的一些内存泄漏。 在code: #包括LT&;&unistd.h中GT; #包括LT&;&stdio.h中GT;诠释的main() { 字符*会员名= getlogin(); 的printf(“%S \\ n”,用户名); 返回0; } 该命令Valgrind的,我用: 的valgri
..
我想获得前总内存分配后,我打电话,为了一个函数来确定如果我正确与否释放一切。 我用C这样做的,我很生疏所以请原谅我,如果这是一个幼稚的问题。我在寻找类似C#GC.GetTotalMemory(真)的东西,这是在Windows现在。 现在我使用 PROCESS_MEMORY_COUNTERS_EX 和 GetProcessMemoryInfo(...),前后调用该函数之后,但因为如果我进入功能和
..
在我的C程序中我使用的libcurl的一些基本功能。今天我跑的valgrind以检查我是否有内存泄漏和Valgrind的疯报告多个错误。 我跟踪它基本上下降到: 卷曲*袅袅; 卷曲code资源;卷曲= curl_easy_init(); // ... curl_easy_cleanup(卷曲); 如果我删除全部采用的libcurl,Valgrind的犯规报告任何错误的code。 我已经读
..
这是code我工作 code 不过也有问题。部分或全部可能是因为中的节点数据(第135行〜)未分配空间,因为行正在改变在主迭代中。但是,当我为它分配空间,在第135行,胜负并没有太大变化且有内存泄漏。我卡住了。 我快要发疯了。你能不能帮我修正错误? 任何帮助是AP preciated。谢谢! 输出: A @ Ubuntu的:〜/ OS / HW1 $ ./o f1.txt f2.
..
我用getpwnam_r来处理我的程序客户端连接。可悲的是,它似乎分配它永远不会释放缓冲区。 有关Valgrind的输出: == == 15774 536(104直接,间接432)的2块字节肯定是失去了在负的战绩1 3 == == 15774在0x4C24CFE:的malloc(以/usr/lib64/valgrind/amd64-linux/vg$p$pload_memcheck.so)
..
每当我创建的pthread,Valgrind的输出内存泄漏, 例如下面的code: 的#include<&stdio.h中GT; #包括LT&;&unistd.h中GT; #包括LT&;&pthreads.h中GT;无效* timer1_function(无效* EIT){ (无效)企业所得税; 的printf(“世界你好\\ n”); 了pthread_exit(N
..
INT * PI; { INT AR [百万] 诠释一个= 3,B = 4; AR [3] = A * B PI = AR; } // AR被销毁 INT AR2 [] = {5,6,7,8,9}; 字符* F =“zcxzsdaaaaaaaaa”; 性病::法院LT&;< PI [3]<<的std :: ENDL; //打印12 我有2个问
..