Partager via


Spécificateurs de format en C++

Mise à jour : novembre 2007

Cette rubrique s'applique à :

Édition

Visual Basic

C#

C++

Web Developer

Express

La rubrique ne s'applique pas La rubrique ne s'applique pas La rubrique s'applique La rubrique ne s'applique pas

Standard

La rubrique ne s'applique pas La rubrique ne s'applique pas

La rubrique s'applique

La rubrique s'applique

Pro et Team

La rubrique ne s'applique pas La rubrique ne s'applique pas

La rubrique s'applique

La rubrique s'applique

Légende du tableau :

La rubrique s'applique

Applicable

La rubrique ne s'applique pas

Non applicable

La rubrique s'applique mais la commande est masquée par défaut

Commande ou commandes masquées par défaut.

Lorsque vous déboguez du code natif dans la fenêtre Espion ou la boîte de dialogue Espion express, vous modifiez le format d'affichage des valeurs à l'aide de spécificateurs de format.

(La plupart des spécificateurs de format ne s'appliquent qu'au code natif, mais Visual C# possède un jeu limité de spécificateurs de format. Pour plus d'informations, consultez Spécificateurs de format en C#.)

Vous pouvez également utiliser des spécificateurs de format dans la fenêtre Exécution, la fenêtre Commande et même les fenêtres sources. Si vous positionnez le curseur au-dessus d'une expression figurant dans ces fenêtres, le résultat apparaîtra dans un DataTip. Les DataTips répercuteront le spécificateur de format dans l'affichage du DataTip.

Exemple

Supposons que nVar soit une variable entière et que la fenêtre Espion montre qu'elle contient la valeur 0x0065. Pour voir la valeur exprimée sous la forme d'un caractère plutôt que sous la forme d'un entier, dans la colonne Nom, après le nom de la variable, ajoutez le spécificateur de format de caractère, c:

nVar,c

À la place de la valeur entière 0x0065, la colonne Valeur affiche désormais la valeur de caractère 101 'e'.

Si vous souhaitez appliquer un spécificateur de format aux éléments d'un tableau ou aux membres d'un objet, vous devez l'appliquer directement à chaque élément ou membre. Vous ne pouvez pas l'appliquer au tableau ou à l'objet dans son intégralité. Par exemple, supposons que vous ayez un tableau nArray et que vous souhaitiez afficher les quatre premiers éléments au format caractère. Dans ce cas, vous saisirez les expressions suivantes dans la fenêtre Espion :

nArray[0],c
nArray[1],c
nArray[2],c
nArray[3],c

Les tableaux suivants montrent les spécificateurs de format reconnus par le débogueur.

Spécificateur

Format

Expression

Valeur affichée

d,i

entier décimal signé

0xF000F065, d

-268373915

u

entier décimal non signé

0x0065, u

101

o

entier octal non signé

0xF065, o

0170145

x,X

entier hexadécimal

61541, x

0x0000F065

l,h

préfixe long ou short pour : d, i, u, o, x, X

00406042,hx

0x0c22

f

virgule flottante signée

(3./2.), f

1.500000

e

notation scientifique signée

(3./2.), e

1.500000e+000

g

virgule flottante signée ou notation scientifique signée, selon ce qui est le plus court

(3./2.), g

1.5

c

caractère unique

0x0065, c

101 'e'

s

Chaîne

0x0012fde8, s

"Hello world"

su

chaîne Unicode

0x0012fde8, su

"Hello world"

s8

Chaîne UTF-8

0x0012fde8, s8

"Hello world"

hr

HRESULT ou un code d'erreur Win32. (Le débogueur décode automatiquement HRESULTs, le spécificateur n'est pas requis dans ces cas-là.

0x00000000L, hr

S_OK

wc

indicateur de classe de fenêtre

0x00000040, wc

WC_DEFAULTCHAR

wm

numéros de message Windows

0x0010, wm

WM_CLOSE

!

format brut, ignorant toutes les personnalisations de vue de type de données

i !

4

Le tableau suivant contient les symboles de format pour les emplacements en mémoire. Vous pouvez utiliser un spécificateur d'emplacement en mémoire avec n'importe quelle valeur ou expression dont l'évaluation fournit un emplacement.

Symbole

Format

Expression

Valeur affichée

ma

64 caractères ASCII

ptr, ma

0x0012ffac .4...0...".0W&.......1W&.0.:W..1...."..1.JO&.1.2.."..1...0y....1

m

16 octets en hexadécimal suivis de 16 caractères ASCII

ptr, m

0x0012ffac B3 34 CB 00 84 30 94 80 FF 22 8A 30 57 26 00 00 .4...0...".0W&..

mb

16 octets en hexadécimal suivis de 16 caractères ASCII

ptr, mb

0x0012ffac B3 34 CB 00 84 30 94 80 FF 22 8A 30 57 26 00 00 .4...0...".0W&..

mw

8 mots

ptr, mw

0x0012ffac 34B3 00CB 3084 8094 22FF 308A 2657 0000

md

4 mots doubles

ptr, md

0x0012ffac 00CB34B3 80943084 308A22FF 00002657

mq

2 mots quadruples

ptr, mq

0x0012ffac 7ffdf00000000000 5f441a790012fdd4

mu

caractères sur 2 octets (Unicode)

ptr, mu

0x0012fc60 8478 77f4 ffff ffff 0000 0000 0000 0000

Spécificateur de taille pour les pointeurs sous forme de tableaux

Si vous avez un pointeur vers un objet que vous souhaitez afficher sous forme de tableau, vous pouvez utiliser un entier pour spécifier le nombre d'éléments du tableau :

ptr,10

Voir aussi

Tâches

Comment : surveiller une expression dans le débogueur

Autres ressources

Fenêtres de variables