Specyfikatory formatu w C++
Podczas debugowania kodu macierzystego w obserwowanych okna lub QuickWatch okno dialogowe, możesz zmienić format, w którym jest wyświetlana wartość przy użyciu formatu specyfikatory.
(Większość specyfikatory format dla tylko kodu macierzystego, ale program Visual C# ma ograniczony zestaw specyfikatory format.Zobacz Specyfikatory formatu w C#.)
Umożliwia także format specyfikatory natychmiastowego w oknie okno polecenia, a nawet w systemie windows źródła.Jeśli zostanie wstrzymana na wyrażenia w tych oknach, wynik pojawi się porada dotycząca danych.DataTips zostaną one zastosowane specyfikator formatu wyświetlania Porada dotycząca danych.
[!UWAGA]
Macierzysty debuger programu Visual Studio są przenoszone na nowy aparat debugowania.Uwzględnione w tej zmiany jest dodanie niektóre nowe specyfikatory format i usunięcie niektórych stare.Przejście nie jest ukończona, a starsze debuger jest nadal używany po wykonaniu usługę międzyoperacyjną (mieszany macierzystego i zarządzane) debugowania za pomocą C + +/ CLI, i po debugowania, za pomocą edycji C++ i kontynuować.W tym temacie częściach specyfikatory format dla każdego aparatu debugowania.
Programu visual Studio 2012 format specyfikatory opisuje specyfikatory formatu w nowy aparat debugowania.
Specyfikatory format do debugowania współdziałania i C++ edytować i kontynuować opisuje specyfikatory format starsze aparat debugowania.
Zawartość
Przykład
Program Visual Studio 2012 w formacie specyfikatory
- Specyfikatory rozmiar dla wskaźniki jako tablic w programie Visual Studio 2012
Format specyfikatory współdziałania debugowania i C++ Edytuj i Kontynuuj
Lokalizacjami pamięci specyfikatory format współdziałania debugowania i C++ Edytuj i Kontynuuj
Rozmiar specyfikator dla wskaźniki jako tablice w współdziałania debugowania i C++ Edytuj i Kontynuuj
Przykład
Załóżmy, że nVar jest zmienna typu Liczba całkowita i obserwuj okno pokazuje, że zawiera on wartość 0x0065.Zobacz wartość wyrażone jako znak, a nie liczba całkowita, w kolumnie Nazwa po nazwę zmiennej, dodać specyfikator formatu znaków, c:
Zamiast wartość całkowitą 0x0065, kolumnie wartość teraz wyświetla wartość znak 101 'e'.
Jeśli chcesz zastosować specyfikator formatu elementy tablicy lub członkom obiektu, należy zastosować go bezpośrednio do każdego elementu lub elementu członkowskiego.Nie można zastosować go do tablicy lub obiektu jako całość.Załóżmy, że mieli tablicy nArray i chciała Zobacz cztery pierwsze elementy w formacie znaków.Należy wprowadzić te wyrażenia w obserwowanych okna:
nArray[0],c
nArray[1],c
nArray[2],c
nArray[3],c
Program Visual Studio 2012 w formacie specyfikatory
W poniższej tabeli przedstawiono specyfikatory formatu, których można używać w programie Visual Studio 2012, gdy użytkownik jest nie debugowanie współdziałania kodu (macierzysty i zarządzanych) za pomocą C + +/ CLI lub za pomocą języka C++ Edytuj i Kontynuuj.
Specyfikatory w bold są nie obsługiwane na potrzeby debugowania współdziałania z C + +/ CLI lub debugowania za pomocą języka C++ Edytuj i Kontynuuj.
Specyfikator |
Format |
Wyrażenie |
Wartość wyświetlana |
---|---|---|---|
d |
Liczba dziesiętna |
0xF000F065 d |
-268373915 |
o |
Liczba całkowita ósemkową bez znaku |
0xF065, o |
0170145 |
x g |
Szesnastkowa liczba całkowita |
61546, x 61541 h |
0x0000f06a |
X H |
Szesnastkowa liczba całkowita |
61541, X 61546, H |
0x0000F06A |
c |
Pojedynczy znak |
0x0065 c |
101 "e" |
s |
Ciąg ASCII |
0x0012fde8, s |
"Hello world" |
SB |
Ciąg ASCII |
0x0012fde8, sb |
Witaj, świecie |
su |
Ciąg w formacie Unicode |
0x0012fde8, su |
L "Witaj, świecie" |
indeks dolny |
Ciąg w formacie Unicode |
0x0012fde8, sub |
Witaj, świecie |
S8 |
Ciąg UTF-8 |
0x0012fde8, s8 |
"Hello world" |
s8b |
Ciąg UTF-8 |
0x0012fde8, s8b |
Witaj, świecie |
bstr |
Ciąg BSTR |
0x0032fe8, bstr |
Dzień |
pl |
Używany wraz z obliczenia wyrażenia języka C++ typu wyliczeniowego.Wyświetla tylko nazwę stała wyliczenia, pomijając wartości liczbowe. |
enumValue, en |
EnumValue |
, nazwa |
& myGlobal n WinMain, nazwa |
Adres wskaźnika nie są wyświetlane. |
|
najdź |
PB, najdź |
Wyświetla tylko informacje klasa podstawowa pb ignoruje klasy pochodne |
|
hr |
Kod błędu HRESULT lub Win32.(Debuger teraz dekoduje HRESULTs automatycznie, więc specyfikator ta nie jest wymagana w takich przypadkach. |
0x00000000L, hr |
S_OK |
WC |
Flaga klasy okna. |
0x00000040, wc |
WC_DEFAULTCHAR |
Windows Media |
Numery komunikat systemu Windows |
0x0010, wm |
POLECENIE WM_CLOSE ZOSTAŁO |
! |
format RAW, ignorując dowolne dostosowania widoków typu danych |
mogę! |
4 |
Specyfikatory rozmiar dla wskaźniki jako tablic w programie Visual Studio 2012
Jeśli masz wskaźnik do obiektu, którego mają być wyświetlane w postaci tablicy, można użyć liczbą całkowitą lub wyrażenie określająca liczbę elementów tablicy:
Specyfikator |
Format |
Wyrażenie |
Wartość wyświetlana |
---|---|---|---|
n |
Dziesiętną lub szesnastkowych liczba całkowita |
pBuffer, [32] pBuffer, [0x20] |
Wyświetla pBuffer jako tablica 32 elementu. |
[oczekiwane] |
Prawidłowe wyrażenie języka C++, które oblicza na liczbę całkowitą. |
pBuffer, [bufferSize] |
Oblicza bufferSize i wyświetla pBuffer jako tablicę obliczane liczbę elementów. |
expand(n) |
pBuffer, expand(1,2) |
Wyświetla trzeci podrzędnych elementu podrzędnego drugi z pBuffer |
Format specyfikatory debugowanie współdziałania z C + +/ CLI lub C++, Edytuj i Kontynuuj
Specyfikatory w bold są obsługiwane tylko na potrzeby debugowania macierzystego i C + +/ CLI kodu i debugowania za pomocą języka C++ Edytuj i Kontynuuj.
Specyfikator |
Format |
Wyrażenie |
Wartość wyświetlana |
---|---|---|---|
d, mogę |
dziesiętna liczba całkowita |
0xF000F065 d |
-268373915 |
u |
niepodpisane liczba dziesiętna |
0x0065, u |
101 |
o |
Liczba całkowita ósemkową bez znaku |
0xF065, o |
0170145 |
x, X |
Szesnastkowa liczba całkowita |
61541, x |
0x0000f065 |
l, h |
Prefiks długich i krótkich: d, i, u, o x X |
00406042, hx |
0x0c22 |
f |
podpisany zmiennoprzecinkowych |
(3. / 2.), f |
1.500000 |
e |
podpisany wykładniczej |
(3. / 2.), e |
1.500000e + 000 |
g |
podpisana zmiennoprzecinkowych lub podpisany wykładniczej, który z nich jest mniej |
(3. / 2.), g |
1.5 |
c |
Pojedynczy znak |
0x0065 c |
101 "e" |
s |
String |
0x0012fde8, s |
"Hello world" |
su |
Ciąg w formacie Unicode |
0x0012fde8, su |
L "Witaj, świecie" |
indeks dolny |
Ciąg w formacie Unicode |
0x0012fde8, sub |
Witaj, świecie |
S8 |
Ciąg UTF-8 |
0x0012fde8, s8 |
"Hello world" |
hr |
Kod błędu HRESULT lub Win32.(Debuger teraz dekoduje HRESULTs automatycznie, więc specyfikator ta nie jest wymagana w takich przypadkach. |
0x00000000L, hr |
S_OK |
WC |
Flaga klasy okna. |
0x00000040, wc |
WC_DEFAULTCHAR |
Windows Media |
Numery komunikat systemu Windows |
0x0010, wm |
POLECENIE WM_CLOSE ZOSTAŁO |
! |
format RAW, ignorując dowolne dostosowania widoków typu danych |
mogę! |
4 |
Formatuj lokalizacjami pamięci specyfikatory debugowanie współdziałania z C + +/ CLI lub C++, Edytuj i Kontynuuj
Poniższa tabela zawiera formatowania symbole używane do lokalizacji pamięci.Specyfikator lokalizacji pamięci można używać ze dowolna wartość lub wyrażenie, którego wartością do lokalizacji.
Symbol |
Format |
Wyrażenie |
Wartość wyświetlana |
---|---|---|---|
ma |
64 znaków ASCII |
PTR, ma |
0x0012ffac. 4... 0... ". 0W &... 1w &.0.:W... 1....".. 1 JO &.1.2.. ". 1... 0y... 1 |
m |
16 bajtów w szesnastkowy, po którym następuje 16 znaków ASCII |
PTR, m |
0X0012FFAC B3 34 FF CB 00 84 30 94 80 22 8A 30 57 26 00 00. 4... 0... ". 0W &... |
MB |
16 bajtów w szesnastkowy, po którym następuje 16 znaków ASCII |
PTR, mb |
0X0012FFAC B3 34 FF CB 00 84 30 94 80 22 8A 30 57 26 00 00. 4... 0... ". 0W &... |
MW |
8 słowa |
PTR, mw |
0X0012FFAC 34B3 00CB 3084 8094 22FF 308A 2657 0000 |
MD |
4 doublewords |
PTR, md |
0X0012FFAC 00CB34B3 80943084 308A22FF 00002657 |
mq |
2 quadwords |
PTR, mq |
0x0012ffac 7ffdf00000000000 5f441a790012fdd4 |
Średnia |
2-bajtowa znaków (Unicode) |
PTR, mu |
0x0012fc60 8478 77f4 ffff ffff 0000 0000 0000 0000 |
Określenie rozmiaru dla wskaźniki jako tablice debugowania współdziałania z C + +/ CLI lub C++, Edytuj i Kontynuuj
Jeśli wskaźnik do obiektu, którego mają być wyświetlane w postaci tablicy, można użyć liczba całkowita określająca liczbę elementów tablicy:
Specyfikator |
Format |
Wyrażenie |
Wartość wyświetlana |
---|---|---|---|
n |
Liczba dziesiętna |
pBuffer [32] |
Wyświetla pBuffer jako tablica 32 elementu. |