Débogueur Visual Studio - Affichage des valeurs entières en hexadécimal

152

J'utilise Visual Studio 2008 et je viens de remarquer que le débogueur affiche des valeurs entières au format hexadécimal lorsque je survole des variables et également dans la fenêtre immédiate. Je suppose que j'ai dû appuyer sur une touche de raccourci accidentellement ou quelque chose comme ça.

Quelqu'un a déjà eu ça? Comment le réinitialiser pour qu'il s'affiche en décimal?

pétillant
la source
Croyez-le ou non, cela bouleversait également l'incrémentation des entiers déclarés avec de gros oops comme f + 1 = 10 (dec).
Laurie Stearn

Réponses:

273

Cliquez avec le bouton droit sur votre fenêtre de surveillance ou fenêtre d' exécution et décochez l'option Affichage hexadécimal.

entrez la description de l'image ici

Leniel Maccaferri
la source
4
n'était pas disponible dans la boîte de dialogue Outils. La seule façon de le modifier était d'ajouter une variable à la fenêtre de surveillance et un clic droit dans le champ Valeur, puis la case à cocher Affichage hexadécimal.
fizzer le
12
J'ai pu le faire dans la fenêtre Call Stack dans VS2010.
StuperUser
1
Était dans la barre d'outils de débogage pour moi.
Breandán le
2
Merci mon Dieu, je me suis débarrassé de cette stupide chose ennuyeuse. Thanks @Leniel
Ali Umair
2
Toujours d'actualité en 2020 avec VS 2019!
Marc Levesque le
45

Vous pouvez également choisir un affichage hexadécimal ou décimal sur une base par variable dans la fenêtre de contrôle de Visual Studio en ajoutant un spécificateur de format de débogage au nom de la variable. Dans la fenêtre de surveillance, entrez:

myInt,h
myInt,d

Les autres spécificateurs de format très utiles sont ac(voir la note de bas de page) pour «toujours calculer» et nqpour afficher sans guillemets. Ils peuvent être utilisés ensemble:

my_string_func(),ac,nq

nqest utile à l'intérieur des DebuggerDisplayattributs, qui peuvent apparaître sur une classe:

[DebuggerDisplay("{my_string_func(),nq}")]
class MyClass
{
    /* ...example continues below... */

... ou sur un ou plusieurs champ (s) à l'intérieur d'une classe:

    [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

  • notez que les versions antérieures de la page de documentation MSDN disaient incorrectement «Ac» (avec un «A» majuscule) - ce qui ne fonctionne pas
Glenn Slayden
la source
+1, mais bien que MSDN indique que hc'est le bon modificateur pour l'affichage hexadécimal, il semble (au moins dans ma version, VS 2012 Premium) que cela xfonctionne à la place (par exemple 1024,xau lieu de 1024,h). Le placement hrenvoie l'erreur "CXX0026 chaîne de format incorrect".
Groo
Je soupçonne que cela pourrait dépendre du langage dans lequel le module en cours de débogage a été écrit. Il est certainement vrai que la syntaxe de l'expression du débogueur change en fonction du langage actuel. D'après votre message, il semble que vous utilisiez C ++; J'ai répondu comme pour C #, même si je n'aurais peut-être pas dû le supposer puisque l'OP n'a pas précisé.
Glenn Slayden
1
Cela offre un meilleur contrôle discrétionnaire sur le formatage par rapport au tout ou rien de "Affichage hexadécimal"
Fernando Gonzalez Sanchez
17

Un bouton hexadécimal s'affiche lorsque Visual Studio est exécuté en mode débogage pour activer / désactiver l'affichage hexadécimal

Mode de débogage de Visual Studio - bouton hexadécimal

DJ '
la source
Ceci est un bouton négligé identique à l'affichage hexadécimal dans le menu contextuel, merci.
Fredrick Gauss
11

Cliquez avec le bouton droit sur l'espace client de presque toutes les fenêtres de débogage (sauf Fenêtre immédiate) - watch / locals / autos / threads / call stack - et décochez l' option "Hexadecimal Display" . Il y a aussi un bouton «Hex» dans la barre d'outils de débogage (droit à «Pas à pas» par défaut) lors du débogage.

marchewek
la source
9

Dans Visual Studio 2010, je l'ai également vu dans la barre d'outils Débogage, il était surligné en jaune `` Hex '', je viens de cliquer dessus et il est revenu aux valeurs décimales (normales)

Joe
la source
3

Dans la fenêtre immédiate, vous pouvez décocher l'option Affichage hexadécimal.

user2704583
la source