• <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 迷宮の未來 閱讀(1632) 評論(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,又是轉貼,和樓上意見一樣,就不要放首頁了。  回復  更多評論   

            <2007年12月>
            2526272829301
            2345678
            9101112131415
            16171819202122
            23242526272829
            303112345

            導航

            統計

            常用鏈接

            留言簿(10)

            隨筆檔案

            文章檔案

            最新隨筆

            搜索

            積分與排名

            最新隨筆

            最新評論

            閱讀排行榜

            評論排行榜

            1000部精品久久久久久久久| 国产成人久久精品二区三区| 精品久久久无码21p发布| 久久婷婷色综合一区二区| 久久九九精品99国产精品| 99久久久精品免费观看国产| 久久国产免费观看精品| 久久综合亚洲鲁鲁五月天| 久久精品一区二区国产| 欧美精品福利视频一区二区三区久久久精品 | 久久九九免费高清视频| 亚洲中文字幕伊人久久无码| 国产人久久人人人人爽| 久久综合精品国产一区二区三区| 久久99精品久久久久久久不卡| 久久精品国产99国产精品| 国内精品久久人妻互换| 久久天天婷婷五月俺也去| 日本免费一区二区久久人人澡| 久久久久亚洲AV片无码下载蜜桃| 天天综合久久久网| 国产精品久久国产精麻豆99网站| 久久久久精品国产亚洲AV无码| 久久久久久国产精品无码下载| 久久精品国产亚洲一区二区| 亚洲精品tv久久久久久久久| 午夜精品久久影院蜜桃| 国产毛片久久久久久国产毛片 | 无码人妻精品一区二区三区久久久| 青青草原1769久久免费播放| 日本久久久久亚洲中字幕| 香蕉久久久久久狠狠色| 人人狠狠综合久久亚洲高清| 91久久精品视频| 亚洲国产精品久久久久久| 久久亚洲国产中v天仙www| 狠狠色婷婷久久一区二区三区| 久久久久人妻一区二区三区vr| 久久精品人人做人人妻人人玩| 婷婷五月深深久久精品| 久久久久久亚洲Av无码精品专口|