C++ biçimi belirteçleri
Yerel kodda hata ayıklarken Watch pencere veya QuickWatch iletişim kutusunda bir değer görüntülendiği biçimi belirteçleri kullanma biçimini değiştirme.
(Çoğu biçimi belirteçleri yalnızca yerel kodda olduğu halde Visual C# sınırlı biçim belirteçleri kümesi vardır.See C# [NULL]'taki biçimi belirteçleri.)
Command window, hemen penceresinde ve hatta kaynak windows de biçim belirteçleri kullanabilirsiniz.Bu windows deyimde duraklatırsanız, sonucu bir DataTip görüntülenir.DataTips DataTip görüntü biçim belirticisi yansıtır.
[!NOT]
Visual Studio 2012 doğal hata ayıklayıcı için yeni bir hata ayıklama motoru moda.Bu değişikliği dahil ve buna ek olarak bazı yeni biçimi belirticileri ve bazı eskilerinin kaldırılmasını idi.Geçiş tam değildir ve (karışık yerel ve yönetilen) birlikte çalışabilirlik yaptığınızda eski hata ayıklayıcı hala kullanılan hata ayıklama ve ne zaman C++ kullanarak debug Düzenle ve devam edin.Bu konudaki bölümler her hata ayıklama alt yapısı için biçim belirteçleri göster.
Visual Studio 2012 format specifiersYeni hata ayıklama alt yapısı'ndaki biçim belirteçleri açıklar.
Format specifiers for interop debugging and C++ edit and continueBiçim belirteçleri eski hata ayıklama Altyapısı'nda açıklanmıştır.
Bu konuda
Example
Visual Studio 2012 format specifiers
- Size specifiers for pointers as arrays in Visual Studio 2012
Format specifiers for interop debugging and C++ edit and continue
Format specifiers memory locations in interop debugging and C++ edit and continue
Size specifier for pointers as arrays in interop debugging and C++ edit and continue
Örnek
Varsayalım nVar bir tamsayı değişken olduğunu ve Gözcü penceresi değeri içeren 0x0065.Karakter biçim belirticisi bkz: değişken adından sonra bir karakter yerine adı sütununda bir tamsayı olarak ifade edilen değer eklemek için c:
Tamsayı değeri yerine 0x0065, değer sütunu şimdi karakter değeri görüntüler 101 'e'.
Bir dizinin öðeleri ya da üye nesnenin biçim belirticisi uygulamak istiyorsanız, doğrudan her öğe veya üye uygulamalısınız.Dizi veya nesne için bir bütün olarak uygulamadan olamaz.Örneğin, bir dizi vardı varsayalım nArray ve ilk dört öğeleri karakter biçiminde görmek istedi.Bu ifadeler girersiniz Watch pencere:
nArray[0],c
nArray[1],c
nArray[2],c
nArray[3],c
Visual Studio 2012 biçimi belirteçleri
Olduğunuzda, aşağıdaki tablolarda, kullanabileceğiniz biçim belirteçleri Visual Studio 2012'de gösterilmektedir. değil (C++ karışık ve yönetilen) birlikte çalışabilirlik hata ayıklama kodu veya C++ kullanarak Düzenle ve devam edin.
Belirteçleri de Kalın olan değil hata ayıklama veya C++ ile hata ayıklama Interop Düzenle ve devam etmek için desteklenen.
Belirleyici |
Biçim |
İfade |
Görüntülenen değer |
---|---|---|---|
d |
ondalık tamsayı |
0xF000F065, d |
-268373915 |
o |
sekizlik imzalanmamış tamsayı |
0xF065, o |
0170145 |
x h |
Onaltılık tamsayı |
61546, x 61541, h |
0x0000f06a |
X H |
Onaltılık tamsayı |
61541, X 61546, H |
0x0000F06A |
c |
Tek bir karakter |
0x0065, c |
101 'e' |
s |
String |
0x0012fde8, s |
"Hello world" |
Su |
Unicode dize |
0x0012fde8, su |
"Hello world" |
S8 |
utf-8 dize |
0x0012fde8, s8 |
"Hello world" |
s8b |
utf-8 dize |
0x0012fde8, s8b |
Merhaba Dünya |
BStr |
bstr dize |
0x0032fe8, bstr |
Hi var. |
ND |
PB, nd |
Pb türetilmiş sınıflar yoksayarak, yalnızca temel sınıf bilgileri görüntüler |
|
hr |
hresult veya Win32 hata kodu.Kodunu (Bu belirleyici bu gibi durumlarda gerekli olmayan şekilde hata ayıklayıcı'yı Şimdi HRESULTs otomatik olarak çözer. |
0x00000000L, hr |
S_OK |
WC |
Pencere sınıfı bayrak. |
0x00000040, wc |
WC_DEFAULTCHAR |
WM |
Windows ileti numarası |
0X0010, wm |
WM_CLOSE |
! |
raw formatı, herhangi bir veri türü görünümleri özelleştirme yoksayma |
Ben! |
4 |
İşaretçiler olarak Visual Studio 2012 diziler için boyut belirteçleri
Bir dizi olarak görüntülemek istediğiniz bir nesneye bir işaretçi varsa, dizi öğelerinin sayısını belirtmek için bir tamsayı ya da bir ifadeyi kullanabilirsiniz:
Belirleyici |
Biçim |
İfade |
Görüntülenen değer |
---|---|---|---|
n |
Ondalık veya onaltılık tamsayı |
pBuffer [32] pBuffer [0x20] |
PBuffer 32 öğe dizisi olarak görüntüler. |
[exp] |
Tamsayı sonucunu geçerli bir C++ ifade. |
pBuffer [ArabellekBoyutu] |
BufferSize değerlendirir ve pBuffer Değerlendirilmiş sayıda öğe dizisi görüntüler. |
expand(n) |
pBuffer, expand(1,2) |
Üçüncü çocuk pBuffer ikinci alt görüntüler |
Hata ayıklama ve C++ için biçim belirteçleri Düzenle ve devam
Belirteçleri de Kalın , hata ayıklama ve C++ ile hata ayıklama Düzenle ve devam etmek için yalnızca desteklenir.
Belirleyici |
Biçim |
İfade |
Görüntülenen değer |
---|---|---|---|
d, ben |
ondalık tamsayı imzalanmış |
0xF000F065, d |
-268373915 |
u |
imzalanmamış Onlu tamsayı |
0x0065, u |
101 |
o |
sekizlik imzalanmamış tamsayı |
0xF065, o |
0170145 |
x, x |
Onaltılık tamsayı |
61541, x |
0x0000f065 |
l, h |
uzun veya kısa öneki: d, i, u, s, x, x |
00406042, hx |
0x0c22 |
f |
Kayan nokta imzalı |
(3. / 2.), f |
1.500000 |
e |
imzalanmış bilimsel gösterim |
(3. / 2.), e |
1.500000e + 000 |
g |
Kayan nokta veya bilimsel gösterim imzalı imzalı, hangisi daha kısa ise |
(3. / 2.), g |
1.5 |
c |
Tek bir karakter |
0x0065, c |
101 'e' |
s |
String |
0x0012fde8, s |
"Hello world" |
Su |
Unicode dize |
0x0012fde8, su |
"Hello world" |
S8 |
utf-8 dize |
0x0012fde8, s8 |
"Hello world" |
hr |
hresult veya Win32 hata kodu.Kodunu (Bu belirleyici bu gibi durumlarda gerekli olmayan şekilde hata ayıklayıcı'yı Şimdi HRESULTs otomatik olarak çözer. |
0x00000000L, hr |
S_OK |
WC |
Pencere sınıfı bayrak. |
0x00000040, wc |
WC_DEFAULTCHAR |
WM |
Windows ileti numarası |
0X0010, wm |
WM_CLOSE |
! |
raw formatı, herhangi bir veri türü görünümleri özelleştirme yoksayma |
Ben! |
4 |
Hata ayıklama ve C++ biçimi belirteçleri bellek konumlarını Düzenle ve devam edin
Aşağıdaki tabloda, bellek konumları için kullanılan biçimlendirme simgelerini içerir.Herhangi bir değer veya bir konuma değerlendirir ifade ile bir bellek konumu belirleyici kullanabilirsiniz.
Sembol |
Biçim |
İfade |
Görüntülenen değer |
---|---|---|---|
ma |
64 ASCII karakteri |
PTR, ma |
0x0012ffac.... 4 0... ".0W &.......1W &.0.:W...1...."..1. jo &.1.2... "...1... 0y....1 |
m |
16 baytlık onaltılı, ardından 16 ASCII karakterleri |
PTR, m |
0X0012FFAC B3 34 00 84 30 94 80 CB FF 22 8A 30 57 26 00 00.... 4 0... ".0W &... |
MB |
16 baytlık onaltılı, ardından 16 ASCII karakterleri |
PTR, mb |
0X0012FFAC B3 34 00 84 30 94 80 CB FF 22 8A 30 57 26 00 00.... 4 0... ".0W &... |
mW |
8 sözcükler |
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 |
mu |
2 baytlık karakterler (Unicode) |
PTR, mu |
0x0012fc60 8478 77f4 ffff ffff 0000 0000 0000 0000 |
Hata ayıklama ve C++ dizileri Düzenle ve devam etmek gibi işaretçiler belirleyici boyutu
Bir dizi olarak görüntülemek istediğiniz bir nesneye bir işaretçi varsa, dizi öğelerinin sayısını belirtmek için bir tamsayı kullanabilirsiniz:
Belirleyici |
Biçim |
İfade |
Görüntülenen değer |
---|---|---|---|
n |
Ondalık tamsayı |
pBuffer [32] |
PBuffer 32 öğe dizisi olarak görüntüler. |