Visual Studio 調試系列7 查看變量佔用的內存(使用內存窗口)

在調試期間,「內存」窗口顯示應用程序正在使用的內存空間。html

調試器窗口(如監視窗口、自動窗口、局部變量窗口和快速監視對話框)顯示變量,這些變量存儲在內存中的特定位置。「內存」窗口向您顯示總體圖片。內存視圖便於檢查在其餘窗口中顯示很差的大數據塊(例如緩衝區或大字符串)。工具

內存窗口不限於顯示數據。它顯示內存空間中的全部內容,包括數據、代碼和未分配內存中的隨機垃圾位。大數據

內存窗口不可用於腳本或SQL調試。這些語言不能識別內存概念。spa

01 打開內存窗口

要啓用內存窗口,必須在「工具>選項」(或「調試>選項」)>調試>常規中選擇「啓用地址級調試」。 指針

打開「內存」窗口調試

  1. 請確保啓用地址級調試中選擇工具 > 選項(或調試 > 選項) >調試 > 常規。code

  2. 開始調試經過選擇綠色箭頭,按F5,或選擇調試 > 開始調試。htm

  3. 下調試 > Windows > 內存,選擇內存 1,內存 2,內存 3,或內存 4。 (某些版本的Visual Studio產品/服務只有一個內存窗口。)blog

02 在內存窗口中移動

計算機的地址空間很大,您能夠經過滾動內存窗口輕鬆地丟失您的位置。圖片

較高的內存地址顯示在窗口的底部。要查看更高的地址,請向下滾動。要查看較低的地址,請向上滾動。

您可使用拖放或在「 地址」字段中輸入地址,當即轉到「 內存」窗口中的指定地址。「 地址」字段接受字母數字地址和計算地址的表達式,例如。e.User.NonroamableId

要強制當即從新評估「 地址」字段中的表達式,請選擇「 自動從新評估自動」圖標的圓角箭頭。

默認狀況下,「 內存」窗口將「 地址」表達式視爲實時表達式,在應用程序運行時將其從新評估。例如,實時表達式可用於查看指針變量觸及的內存。

要使用拖放移動到內存位置:

  1. 在任何調試器窗口中,選擇內存地址或包含內存地址的指針變量。

  2. 將地址或指針拖放到「 內存」窗口中。該地址隨後出如今「 地址」字段中,「 內存」窗口將調整爲在頂部顯示該地址。

要在「地址」字段中輸入內存位置,請移至內存位置:

  • 在「 地址」字段中鍵入或粘貼地址或表達式,而後按Enter鍵,或從「 地址」字段的下拉列表中選擇它。「 內存」窗口調整爲在頂部顯示該地址。

按下回車鍵,以下圖:

可是我的看不懂裏面具體的內容。

03 自定義內存窗口

默認狀況下,內存內容以十六進制格式顯示爲1字節整數,窗口寬度決定顯示的列數。您能夠自定義「 內存」窗口顯示內存內容的方式。

要更改內存內容的格式:

  • 在「 內存」窗口中單擊鼠標右鍵,而後從上下文菜單中選擇所需的格式。

要更改「內存」窗口中的列數:

  • 選擇「 列」字段旁邊的下拉箭頭,而後選擇要顯示的列數,或者根據窗口寬度選擇「 自動」進行自動調整。也能夠手動輸入數字。

若是您不但願在應用程序運行時更改「 內存」窗口的內容,則能夠關閉實時表達式評估。

要切換實時評估:

  • 在「 內存」窗口中單擊鼠標右鍵,而後在上下文菜單中選擇「 自動從新評估」。

您能夠隱藏或顯示「 內存」窗口頂部的工具欄。隱藏工具欄時,您將沒法訪問「 地址」字段或其餘工具。

要切換工具欄顯示:

  • 在「 內存」窗口中單擊鼠標右鍵,而後在上下文菜單中選擇「 顯示工具欄 」。工具欄顯示或消失,具體取決於其先前的狀態。

04 跟蹤內存中的指針

在本機代碼應用程序中,您能夠將註冊名稱用做實時表達式。例如,您可使用堆棧指針跟隨堆棧。

要經過內存跟蹤指針:

  1. 在「 內存窗口地址」字段中,輸入當前範圍內的指針表達式。根據語言的不一樣,您可能須要取消引用它。

  2. 按Enter鍵。

    使用諸如Step之類的調試命令時,「 地址」字段和「 內存」窗口頂部顯示的內存地址會隨着指針的更改而自動更改。

 

相關文章
相關標籤/搜索