日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Visual Studio 调试器---Visual Studio 调试器

發布時間:2025/3/15 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Visual Studio 调试器---Visual Studio 调试器 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Visual Studio 調試器 啟用內存泄漏檢測

?

本主題適用于:

Visual Studio 版本

Visual Basic

C#

C++

J#

速成版

本機

標準版

本機

專業團隊版

本機

檢測內存泄漏的主要工具是調試器和 C 運行時庫 (CRT) 調試堆函數。若要啟用調試堆函數,請在程序中包括以下語句:

復制代碼 #define _CRTDBG_MAP_ALLOC #include <stdlib.h> #include <crtdbg.h> 注意

#include 語句必須采用上文所示順序。如果更改了順序,所使用的函數可能無法正確工作。

通過包括 crtdbg.h,將 malloc 和 free 函數映射到其“Debug”版本 _malloc_dbg 和 _free_dbg,這些函數將跟蹤內存分配和釋放。此映射只在調試版本(在其中定義了 _DEBUG)中發生。發布版本使用普通的 mallocfree 函數。

#define 語句將 CRT 堆函數的基版本映射到對應的“Debug”版本。并非絕對需要該語句,但如果沒有該語句,內存泄漏轉儲包含的有用信息將較少。

在添加了上面所示語句之后,可以通過在程序中包括以下語句來轉儲內存泄漏信息:

復制代碼 _CrtDumpMemoryLeaks();

當在調試器下運行程序時,_CrtDumpMemoryLeaks 將在“輸出”窗口中顯示內存泄漏信息。內存泄漏信息如下所示:

復制代碼 Detected memory leaks! Dumping objects -> C:/PROGRAM FILES/VISUAL STUDIO/MyProjects/leaktest/leaktest.cpp(20) : {18} normal block at 0x00780E80, 64 bytes long.Data: < > CD CD CD CD CD CD CD CD CD CD CD CD CD CD CD CD Object dump complete.

如果沒有使用 #define _CRTDBG_MAPALLOC 語句,內存泄漏轉儲將如下所示:

復制代碼 Detected memory leaks! Dumping objects -> {18} normal block at 0x00780E80, 64 bytes long.Data: < > CD CD CD CD CD CD CD CD CD CD CD CD CD CD CD CD Object dump complete.

未定義 _CRTDBG_MAP_ALLOC 時,所顯示的會是:

  • 內存分配編號(在大括號內)。

  • 塊類型(普通、客戶端或 CRT)。

  • 十六進制形式的內存位置。

  • 以字節為單位的塊大小。

  • 前 16 字節的內容(亦為十六進制)。

定義了 _CRTDBG_MAP_ALLOC 時,還會顯示在其中分配泄漏的內存的文件。文件名后括號中的數字(本示例中為 20)是該文件內的行號。

轉到源文件中分配內存的行

  • 在“輸出”窗口中雙擊包含文件名和行號的行。

    - 或 -

    在“輸出”窗口中選擇包含文件名和行號的行,然后按 F4 鍵。

_CrtSetDbgFlag

如果程序總是在同一位置退出,調用 _CrtDumpMemoryLeaks 將非常容易。如果程序從多個位置退出,則無需在每個可能退出的位置放置對 _CrtDumpMemoryLeaks 的調用,而可以在程序開始處包含以下調用:

復制代碼 _CrtSetDbgFlag ( _CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF );

該語句在程序退出時自動調用 _CrtDumpMemoryLeaks。必須同時設置 _CRTDBG_ALLOC_MEM_DF_CRTDBG_ALLOC_MEM_DF 兩個位域,如上所示。

設置 CRT 報告模式

默認情況下,_CrtDumpMemoryLeaks 將內存泄漏信息轉儲到“輸出”窗口的“調試”窗格,如上所述。可以使用 _CrtSetReportMode 重置該設置,以轉儲到另一位置。如果使用庫,它可以將輸出重置到另一位置。在此情況下,可以使用以下語句將輸出位置設置回“輸出”窗口:

復制代碼 _CrtSetReportMode( _CRT_ERROR, _CRTDBG_MODE_DEBUG );

有關更多信息,請參見 _CrtSetReportMode。?

總結

以上是生活随笔為你收集整理的Visual Studio 调试器---Visual Studio 调试器的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 久久精品欧美一区 | 国产精品h | 91成人免费看片 | 国产精品无码久久久久成人app | 污网站在线免费 | 午夜小福利| 亚洲第一福利网站 | 欧美mv日韩mv国产网站app | 性户外野战hd | 日本少妇三级 | www.自拍偷拍| 你懂的在线播放 | 日韩精品成人无码专区免费 | 三级视频网 | 亚洲av男人的天堂在线观看 | 久久久久久久一区二区 | 温柔女教师在线观看 | 日本一区二区三区在线看 | 亚洲毛片在线播放 | 日本视频在线观看 | 午夜久久福利 | 四虎永久免费影院 | 午夜精 | 国产精品一区av | 国产精品一级无码 | 国产精品久久久久久久 | 综合色婷婷 | 嫩草视频在线播放 | 色婷婷av一区二区三区之红樱桃 | 一区二区小说 | 91日韩在线 | 欧美性受xxxx狂喷水 | 免费三级黄色 | 国产在线拍揄自揄拍无码视频 | 人人爱操| 成人免费观看网站 | 人妖一区二区三区 | 人体av | 欧美成人dvd在线视频 | 色综合天天综合网天天看片 | 五月天综合网站 | 精品国产乱码久久久久久郑州公司 | 91精品福利视频 | 三级在线观看网站 | 国产欧美日韩91 | 亚洲精品18在线观看 | 777av| 精品国产乱码一区二 | 女人囗交吞精囗述 | 特级毛片在线播放 | 日韩精品电影在线 | 欧美美女性视频 | 久久久久久久久蜜桃 | 极品尤物魔鬼身材啪啪仙踪林 | 成人av男人的天堂 | 50度灰在线| 中文在线日韩 | 调教驯服丰满美艳麻麻在线视频 | 九色视频网 | 日韩成人自拍 | 国产精品午夜影院 | 成人在线视频一区二区 | 光棍影院手机版在线观看免费 | 骚色综合 | 干干操操 | 日韩精品免费一区二区 | 三级国产在线 | 中文字幕av影片 | 一二三区中文字幕 | 国产在线视频自拍 | 欧美韩日精品 | 99热首页 | 在线观看精品视频 | 在线视频精品 | 97久久久久久 | 久草资源在线播放 | 国产日韩一级片 | 麻豆影视大全 | av中出在线 | 强行糟蹋人妻hd中文 | 野外吮她的花蒂高h在线观看 | 成人免费小视频 | 男生插女生视频 | 超黄av| 久草福利在线观看 | 波多野结衣av在线播放 | 国内成人免费视频 | 操欧洲美女 | 欧洲一区二区三区在线 | 亚洲AV无码精品黑人黑人 | 午夜av毛片 | 一区二区三区www污污污网站 | 国产网站免费观看 | 日韩在线三区 | 日韩aⅴ片| 1024金沙人妻一区二区三区 | 久久久久久久久久久久国产精品 | 奇米狠狠去啦 | 性欧美xxxx|