PTT
Submit
Submit
选择语言
正體中文
简体中文
PTT
C_and_CPP
[问题] doulbe free or corruoption
楼主:
xanushan
(腾夜)
2016-06-16 16:20:16
请教一下各位大大,修改程式的时候发生 doulbe free or corruoption的问题,该如何
解决
环境rat hat 4 / gcc 34
##手机发文排版不佳,请见谅。
程式码简化,短网址如下:
http://codepad.org/STcOU5QB
作者:
Hazukashiine
(私は幸せです)
2016-06-16 16:26:00
for (exp1; exp2; exp3) { stat; }从这段 code 看不到 double free 除非有水晶球吧?还有为什么会 free 一个不是指标型态的变量啊 QQ
楼主:
xanushan
(腾夜)
2016-06-16 16:33:00
已更正. 打太快打错…
作者:
bibo9901
(function(){})()
2016-06-16 16:35:00
因为你在write data 循环条件用 j, 但里面用 k ?
作者:
Hazukashiine
(私は幸せです)
2016-06-16 16:35:00
---> float a; free(a); <---
楼主:
xanushan
(腾夜)
2016-06-16 16:44:00
抱歉让大家伤眼了…已更正…所以不能重复free吗…如果会重复malloc 的话新的网址如右:
http://codepad.org/iFWO7Kt8
编译有过,但跑出double free ....
作者:
bibo9901
(function(){})()
2016-06-16 17:03:00
你a,b,c还是没初始化啊
楼主:
xanushan
(腾夜)
2016-06-16 17:09:00
sor…更正了…都给NULL…结果一样…
http://codepad.org/az35g2cV
还是错不在这 …因为我只有改if里的code而己
作者: yvb
2016-06-16 17:20:00
为什么 free(b); 后却设 a=NULL; 而不是设 b=NULL; ??
楼主:
xanushan
(腾夜)
2016-06-16 17:25:00
打错…改好了…QQ
http://codepad.org/STcOU5QB
错误结果一样…刚刚发现把第二个ball[j].counter2换成其他变量就没有错误了…有大大能解答吗…(malloc)
作者: yvb
2016-06-16 17:59:00
那就是你未贴出的部分, 存取越界把heap搞坏, 所以free()报错.比方你ball的宣告长什么样,或是如何取得ball的空间.以及 a b c 的存取动作.没看到错不代表没错,可能只是刚好没动到free()时,检查的部分.
作者: phishingphi (hsnutontu)
2016-06-16 21:17:00
可以考虑用valgrind之类的tool
作者:
steve1012
(steve)
2016-06-18 05:23:00
用tool 直接看哪里free
继续阅读
Re: [问题] static inline的使用时机
EdisonX
[问题] Socket连线问题
peilin0407
[问题] static inline的使用时机
wtchen
[问题] 询问程式问题
kinkipikachu
[问题] 请问MFC元件位置跑掉的问题
ohnotme
[问题] 精准的Sleep function
eleghost
[问题] BCB Form起始位置该怎么设
a7878779
[问题] opencv 画出椭圆
wadevs14161
[分享] Tutorialspoint 线上编译
noodleT
[问题] 小弟要进行个一小时实作,C,可能题目是?
dreamy0720
Links
booklink
Contact Us: admin [ a t ] ucptt.com