• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            (轉貼)C/C++程序內存泄漏檢測

            原帖地址:http://blog.163.com/pear_0426/blog/static/128907752007102492715907/

            1. 包含頭文件和定義:
            #define _CRTDBG_MAP_ALLOC
            #include <stdlib.h>
            #include <crtdbg.h>
            如果定義了_CRTDBG_MAP_ALLOC,打印出來的是文件名和行數等更加直觀的信息。

            2. 方法一
            在程序入口寫幾個語句:
             int tmpFlag = _CrtSetDbgFlag( _CRTDBG_REPORT_FLAG );
             tmpFlag |= _CRTDBG_LEAK_CHECK_DF;
             _CrtSetDbgFlag( tmpFlag );
            程序退出時,如果發現有內存泄漏,會自動在DEBUG OUTPUT窗口和DebugView中輸出內存泄漏信息。

            3. 方法二
            在程序任何地方用以下語句:
            _CrtDumpMemoryLeaks();
            隨時檢測打印內存泄漏信息,如果有的話。不過此用法有個局限,對于一些全局函數,如果初始化時申請了內存,到程序結束時候才釋放,此函數會一直把新申請的內存當作泄漏來對待。

            4. 方法三
            使用_CrtMemCheckpoint方法,在某段程序中統計泄漏信息。如下:
             _CrtMemState s1, s2, s3;
             _CrtMemCheckpoint( &s1 );
             
             // 程序段1:DO SOMETHING

             _CrtMemCheckpoint( &s2 );
             if ( _CrtMemDifference( &s3, &s1, &s2) )
              _CrtMemDumpStatistics( &s3 );

            可以統計程序段1中是否發生了內存泄漏。

            posted on 2008-01-22 09:48 迷宮の未來 閱讀(1620) 評論(3)  編輯 收藏 引用

            評論

            # re: (轉貼)C/C++程序內存泄漏檢測 2008-01-22 10:05 夢在天涯

            不錯!!!!  回復  更多評論   

            # re: (轉貼)C/C++程序內存泄漏檢測 2008-01-22 10:24 duguguiyu

            雖然是有用的東西。但不明白為什么明明是轉貼卻要放到首頁原創精華區??。。。  回復  更多評論   

            # re: (轉貼)C/C++程序內存泄漏檢測[未登錄] 2008-01-22 11:04 cppexplore

            意義不大
            首先 無論是win下還是linux下 都有很出色的內存檢測工具。這些工具已經成為測試程序的必須,而不是可選。
            其次 不論是內存檢測工具 還是文中所述方法 都只能檢測嚴格的內存泄漏,比如base *a=new A(); base *b=new B(); a=b;則對原a的內存控制完全失去,此為內存泄漏。完全的內存檢測 還要配合 完善的log機制 交互式查看系統信息等附加功能
            最后,小trick,又是轉貼,和樓上意見一樣,就不要放首頁了。  回復  更多評論   

            <2009年4月>
            2930311234
            567891011
            12131415161718
            19202122232425
            262728293012
            3456789

            導航

            統計

            常用鏈接

            留言簿(10)

            隨筆檔案

            文章檔案

            最新隨筆

            搜索

            積分與排名

            最新隨筆

            最新評論

            閱讀排行榜

            評論排行榜

            久久99久久99小草精品免视看| 国产成人综合久久精品红| 亚洲国产精品无码成人片久久| 久久免费视频1| 99国产欧美精品久久久蜜芽| 国产免费福利体检区久久 | 久久九九有精品国产23百花影院| 久久精品国产秦先生| 中文字幕精品久久| 久久超碰97人人做人人爱| 国产亚洲色婷婷久久99精品91| 亚洲欧美一级久久精品| 国产一级做a爰片久久毛片| 久久久久亚洲av成人无码电影| 人妻无码αv中文字幕久久| 精品国产一区二区三区久久蜜臀| 亚洲精品无码专区久久久| 久久精品中文字幕第23页| 欧美一区二区三区久久综合| 久久精品国产一区二区三区不卡| 久久久久亚洲AV片无码下载蜜桃| 一97日本道伊人久久综合影院| 久久精品九九亚洲精品天堂| 亚洲精品成人久久久| 国产99久久久国产精免费| 久久99精品久久久久婷婷| 久久毛片一区二区| 久久久久久久国产免费看| 蜜桃麻豆www久久| 99久久精品毛片免费播放| 精品综合久久久久久98| 亚洲天堂久久久| 亚洲а∨天堂久久精品9966| 办公室久久精品| 国产精品成人久久久久久久| 丰满少妇高潮惨叫久久久| 成人综合伊人五月婷久久| 久久国产精品无码一区二区三区 | 久久97久久97精品免视看秋霞| 国产亚洲婷婷香蕉久久精品| 国产精品久久免费|