在調試時,“自動變量”和“局部變量”窗口會顯示變量值。 僅在調試會話期間,這兩個窗口才可用。 “自動變量”窗口顯示當前斷點周圍使用的變量。 “局部變量”窗口顯示在局部范圍內定義的變量,通常是當前函數或方法。
若要打開“自動變量”窗口,請在調試時依次選擇“調試” > “窗口” > “自動變量”,或按 Ctrl+Alt+V > A 調試。
若要打開“局部變量”窗口,請在調試時選擇“調試” > “窗口” > “局部變量”,或按 Alt+4。


調試器窗口中的默認數字格式為十進制。 若要將其更改為十六進制,請在“局部變量”或“自動”窗口中右鍵單擊,然后選擇“十六進制顯示”。 此更改會影響所有調試器窗口。


若要編輯“自動”或“局部變量”窗口中大多數變量的值,請雙擊該值並輸入新值。

編輯完成后,按下回車鍵即生效,紅色標注。

你可以輸入表達式作為一個值,例如 a + b。 調試器接受大多數合法的語言表達式。
在更改值和表達式之前,請確保你了解其后果。 一些可能存在的問題有:
(1)計算某些表達式可能會更改變量的值或以其他方式影響程序的狀態。 例如,計算 var1 = ++var2 會更改 var1 和 var2 的值。據說這些表達式具有副作用。 如果你不了解這些副作用,則可能會導致意外結果。
(2)編輯浮點值時,由於要將小數部分從十進制轉換為二進制,因此所得的結果可能存在微小誤差。
甚至看起來無關緊要的編輯都能引起浮點變量中的位的某些更改。
您可以搜索的名稱、 值和類型的列中的關鍵字自動或局部變量使用上面的每個窗口的搜索欄的窗口。 按 ENTER 或選擇其中一個箭頭,以執行搜索。 若要取消正在進行的搜索,請在搜索欄中選擇"x"圖標。
使用左右箭頭鍵 (Shift + F3 和 F3,分別) 之間進行導航找到匹配項。


若要使搜索更多或更少全面,使用搜索更深入地頂部的下拉列表中自動或局部變量窗口可選擇要搜索到的層深度嵌套的對象。

可使用“調試位置”工具欄選擇所需的函數、線程或進程,這將更改“自動”和“局部變量”窗口的上下文。
若要啟用調試位置工具欄上,單擊工具欄區域和選擇的空白部分調試位置從下拉列表中或選擇視圖 > 工具欄 > 調試位置。
設置斷點並開始調試。 命中斷點時,執行暫停,你可以在“調試位置”工具欄中看到相應位置。
在.NET 和 C ++ 代碼中,當單步調試或退出方法調用時,可以在“自動”窗口中檢查返回值如果方法調用返回值未保存在局部變量中,查看這些返回值會非常有用。 方法可以用作參數或用作另一種方法的返回值。
例如,下面的 C# 代碼將添加兩個函數的返回值:
1 static void Main(string[] args) 2 { 3 int a, b, c, d; 4 a = 1; 5 b = 2; 6 c = 3; 7 d = 4; 8 int x = sumVars(a, b) + subtractVars(c, d); 9 10 Console.WriteLine("Press any key to exit."); // 在調試模式下保持控制台打開 11 Console.ReadKey(); 12 } 13 14 private static int sumVars(int i, int j) 15 { 16 return i + j; 17 } 18 19 private static int subtractVars(int i, int j) 20 { 21 return j - i; 22 }
要在“自動”窗口中查看 sumVars() 和 subtractVars() 方法調用的返回值,請執行以下操作:
-
在
int x = sumVars(a, b) + subtractVars(c, d);行上設置斷點。 -
開始調試,當執行在斷點處暫停時,選擇“單步跳過”或按 F10。 應該在“自動”窗口中看到以下返回值:

