免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1223 | 回复: 2
打印 上一主题 下一主题

free遇到的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-03-31 14:27 |只看该作者 |倒序浏览
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
main()
{
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;char *tmp,*p = NULL;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;p = (char *)malloc(10*sizeof(char));
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;memset(p,0,10*sizeof(p));
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf("%s",p);
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;free(p);
}


如上代码,运行后出现
*** glibc detected *** free(): invalid next size (fast): 0x0000000000501010 ***
======= Backtrace: =========
/lib/libc.so.6[0x5d4ac1]
/lib/libc.so.6(cfree+0x90)[0x5d80f0]
./b.out[0x80484b0]
/lib/libc.so.6(__libc_start_main+0xe0)[0x581390]
./b.out[0x80483a1]
======= Memory map: ========
00110000-00111000 r-xp 00110000 00:00 0          [vdso]
0054c000-00567000 r-xp 00000000 fd:00 28870108   /lib/ld-2.7.so
00567000-00568000 r--p 0001a000 fd:00 28870108   /lib/ld-2.7.so
00568000-00569000 rw-p 0001b000 fd:00 28870108   /lib/ld-2.7.so
0056b000-006be000 r-xp 00000000 fd:00 28870109   /lib/libc-2.7.so
006be000-006c0000 r--p 00153000 fd:00 28870109   /lib/libc-2.7.so
006c0000-006c1000 rw-p 00155000 fd:00 28870109   /lib/libc-2.7.so
006c1000-006c4000 rw-p 006c1000 00:00 0
00af2000-00afd000 r-xp 00000000 fd:00 28870119   /lib/libgcc_s-4.1.2-20070925.so.1
00afd000-00afe000 rw-p 0000a000 fd:00 28870119   /lib/libgcc_s-4.1.2-20070925.so.1
08048000-08049000 r-xp 00000000 fd:01 36         /tmp/b.out
08049000-0804a000 rw-p 00000000 fd:01 36         /tmp/b.out
08d8a000-08dab000 rw-p 08d8a000 00:00 0          [heap]
b7e00000-b7e21000 rw-p b7e00000 00:00 0
b7e21000-b7f00000 ---p b7e21000 00:00 0
b7f6b000-b7f6d000 rw-p b7f6b000 00:00 0
bf970000-bf985000 rw-p bffeb000 00:00 0          [stack]
Aborted (core dumped)
请问是代码有错误么?谢谢

论坛徽章:
0
2 [报告]
发表于 2009-03-31 14:36 |只看该作者

回复 #1 tanos 的帖子

memset(p,0,10*sizeof(char));

论坛徽章:
1
天蝎座
日期:2013-08-25 10:27:22
3 [报告]
发表于 2009-03-31 14:39 |只看该作者
memset(p,0,10*sizeof(p));

to

memset(p,0,10*sizeof(char));
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP