Visual Studio debugger - Displaying integer values in Hex
DebuggingVisual Studio-2008IntegerHexDebugging Problem Overview
I'm using Visual Studio 2008 and I have just noticed that the debugger is displaying integer values as Hex when I hover over variables and also in the immediate window. I guess I must have hit a shortcut key accidently or something.
Anyone had this before? How do I set it back to display in decimal?
Debugging Solutions
Solution 1 - Debugging
Right-click your Watch Window or Immediate Window and uncheck Hexadecimal Display option.
Solution 2 - Debugging
You can also choose hexadecimal or decimal display on a per-variable basis in the Visual Studio watch window by appending a debugger format specifier to the variable name. In the watch window, enter:
myInt,h
myInt,d
The other very useful format specifiers are ac
(see footnote) for 'always calculate', and nq
for displaying with 'no quotes.' They can be used together:
my_string_func(),ac,nq
nq
is useful inside DebuggerDisplay
attributes, which can appear on a class:
[DebuggerDisplay("{my_string_func(),nq}")]
class MyClass
{
/* ...example continues below... */
...or on one or more field(s) inside a class:
[DebuggerDisplay("{some_field,nq}", Name="substitute name here")]
int an_integer;
[DebuggerBrowsable(DebuggerBrowsableState.Never)]
String some_field;
}
http://msdn.microsoft.com/en-us/library/e514eeby(v=VS.100).aspx
- note that earlier versions of the MSDN doc page incorrectly said 'Ac' (with a capital 'A')--which doesn't work
Solution 3 - Debugging
There is a Hex button shown when Visual Studio is run in Debug mode to enable/disable the Hex display
Solution 4 - Debugging
Right-click on client space of almost every debug window (except Immediate Window) - watch/locals/autos/threads/call stack - and uncheck "Hexadecimal Display" option. There's also a "Hex" button in debug toolbar (right to "Step Over" by default) when debugging.
Solution 5 - Debugging
In Visual Studio 2010 I also saw it in the Debug toolbar, it was highlighted in yellow 'Hex', I just clicked it and it returned to (normal) decimal values
Solution 6 - Debugging
Visual Studio 2017 Decimal vs. hexadecimal display is controlled only from the Watch dialog.
- Break after setting the variable.
- Right mouse click the variable and select "Add Watch" or "QuickWatch"
- Right mouse click the line in the Watch dialogue.
- Uncheck "Hexadecimal Display"
The display will now be in decimal.
Solution 7 - Debugging
In the immediate window you can uncheck the Hexadecimal Display option.