Identificatori di formato in C++
Aggiornamento: novembre 2007
Le informazioni contenute in questo argomento sono valide per:
Edition |
Visual Basic |
C# |
C++ |
Web Developer |
---|---|---|---|---|
Express |
||||
Standard |
||||
Pro e Team |
Legenda tabella:
Applicabile |
|
Non applicabile |
|
Comando o comandi nascosti per impostazione predefinita. |
Quando si esegue il debug in codice nativo nella finestra Espressioni di controllo o nella finestra di dialogo Controllo immediato, è possibile modificare il formato di visualizzazione di un valore tramite gli identificatori di formato.
La maggior parte degli identificatori di formato sono destinati solo al codice nativo, benché Visual C# ne fornisca un insieme limitato. Per informazioni, vedere Identificatori di formato in C#.
Gli identificatori di formato possono anche essere utilizzati nella finestra di controllo immediato, nella finestra di comando e persino nelle finestre di origine. Se in queste finestre si sposta il cursore del mouse su un'espressione, il risultato verrà visualizzato in un suggerimento dati. I suggerimenti dati riflettono l'identificatore di formato nella visualizzazione Suggerimento dati.
Esempio
Si supponga che nVar sia una variabile integer e che nella finestra Espressioni di controllo sia indicato che contiene il valore 0x0065. Per visualizzare il valore espresso come carattere anziché come valore integer, nella colonna Nome, dopo il nome di variabile, aggiungere l'identificatore di formato carattere, c:
nVar,c
Nella colonna Valore verrà visualizzato il valore di carattere 101 'e', anziché il valore integer 0x0065.
Per applicare un identificatore di formato agli elementi di una matrice o ai membri di un oggetto, è necessario applicarlo direttamente a ciascun elemento o membro. Non è possibile applicarlo all'intera matrice o all'intero oggetto Si supponga, ad esempio, di disporre di una matrice nArray e di voler visualizzare i primi quattro elementi nel formato carattere. Le espressioni verrebbero immesse nella finestra Espressioni di controllo:
nArray[0],c
nArray[1],c
nArray[2],c
nArray[3],c
Nelle tabelle che seguono sono elencati gli identificatori di formato riconosciuti dal debugger.
Identificatore |
Formato> |
Espressione |
Valore visualizzato |
---|---|---|---|
d,i |
Integer decimale signed |
0xF000F065, d |
-268373915 |
u |
Integer decimale unsigned |
0x0065, u |
101 |
o |
Integer ottale unsigned |
0xF065, o |
0170145 |
x,X |
Integer esadecimale |
61541, x |
0x0000F065 |
l,h |
Prefisso longo short per: d, i, u, o, x, X |
00406042,hx |
0x0c22 |
f |
Virgola mobile signed |
(3./2.), f |
1.500000 |
e |
Notazione scientifica signed |
(3./2.), e |
1.500000e+000 |
g |
Virgola mobile signed o notazione scientifica signed (a seconda di quale sia più breve) |
(3./2.), g |
1.5 |
c |
Carattere singolo |
0x0065, c |
101 'e' |
s |
String |
0x0012fde8, s |
"Hello world" |
su |
Stringa Unicode |
0x0012fde8, su |
"Hello world" |
s8 |
Stringa UTF-8 |
0x0012fde8, s8 |
"Hello world" |
hr |
HRESULT o codice di errore Win32. Poiché il debugger decodifica gli HRESULT automaticamente, in questi casi tale identificatore non è necessario. |
0x00000000L, hr |
S_OK |
wc |
Flag di classe Windows |
0x00000040, wc |
WC_DEFAULTCHAR |
wm |
Numeri di messaggio Windows |
0x0010, wm |
WM_CLOSE |
! |
formato non elaborato, in cui vengono ignorate le personalizzazioni delle viste dei tipi di dati |
i ! |
4 |
Nella tabella che segue sono elencati i simboli di formattazione utilizzati per le posizioni di memoria. Gli identificatori della posizione di memoria possono essere utilizzati con qualsiasi valore o espressione che restituisca una posizione.
Simbolo |
Formato |
Espressione |
Valore visualizzato |
---|---|---|---|
ma |
64 caratteri ASCII |
ptr, ma |
0x0012ffac .4...0...".0W&.......1W&.0.:W..1...."..1.JO&.1.2.."..1...0y....1 |
m |
16 byte in formato esadecimale, seguiti da 16 caratteri 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 byte in formato esadecimale, seguiti da 16 caratteri 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 parole |
ptr, mw |
0x0012ffac 34B3 00CB 3084 8094 22FF 308A 2657 0000 |
md |
4 parole doppie |
ptr, md |
0x0012ffac 00CB34B3 80943084 308A22FF 00002657 |
mq |
2 parole quadruple |
ptr, mq |
0x0012ffac 7ffdf00000000000 5f441a790012fdd4 |
mu |
Caratteri da 2 byte (Unicode) |
ptr, mu |
0x0012fc60 8478 77f4 ffff ffff 0000 0000 0000 0000 |
Identificatore di dimensione per visualizzare i puntatori come matrici
Se si dispone di un puntatore a un oggetto che si desidera visualizzare come matrice, è possibile utilizzare un valore integer per specificare il numero di elementi di matrice:
ptr,10
Vedere anche
Attività
Procedura: controllare un'espressione nel debugger