首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

printf()函数存在内存泄露?该怎么解决

2012-02-12 
printf()函数存在内存泄露?跟踪printf()函数发现:首次使用printf函数时会调用_malloc_crt(_INTERNAL_BUFSI

printf()函数存在内存泄露?
跟踪printf()函数发现:
首次使用printf函数时会调用_malloc_crt(_INTERNAL_BUFSIZ)来申请内存
但是在程序结束前并没有找到释放这段内存的地方,请问这里难道有内存泄露?
调用堆栈如下:
malloc_dbg(unsigned   int   nSize=4096,   int   nBlockUse=2,  
                    const   char   *   szFileName=0x00429578,   int   nLine=93)
_stbuf(_iobuf   *   str=0x0042cc60)
printf(const   char   *   format=0x0042802c,   ...)
main()



[解决办法]
程序都结束了,
就让系统来回收好了 ~

不过,
printf 有这个问题么?
没有关注过 ~
[解决办法]
是通过_malloc_crt手动申请的空间,系统可以回收吗?
虫虫说得很清楚了,在程序退出的时候,系统会收回所有内存。

估计这段内存是printf动态分配作为内部缓冲区的。

热点排行