C++의 형식 지정자
이 항목은 다음 언어에 적용됩니다.
Edition |
Visual Basic |
C# |
F# |
C++ |
Web Developer |
---|---|---|---|---|---|
Express |
|||||
Pro, Premium 및 Ultimate |
조사식 창 또는 간략한 조사식 대화 상자에서 네이티브 코드를 디버깅할 때 형식 지정자를 사용하여 값이 표시되는 형식을 변경할 수 있습니다.
대부분의 형식 지정자는 네이티브 코드에만 사용되지만 Visual C#에는 제한된 형식 지정자 집합이 있습니다. 자세한 내용은 C#의 형식 지정자를 참조하십시오.
또한 직접 실행 창, 명령 창 및 소스 창에서도 형식 지정자를 사용할 수 있습니다. 이러한 창에서 식에 커서를 놓으면 결과가 DataTips에 나타납니다. DataTips 보기에는 형식 지정자에 맞는 DataTips가 표시됩니다.
예제
예를 들어, nVar가 정수 변수이고 조사식 창에서 이 변수의 값이 0x0065로 표시된다고 가정합니다. 정수 대신 문자로 표시된 값을 보려면 이름 열에서 다음과 같이 변수 이름 뒤에 문자 형식 지정자 c를 넣으십시오.
nVar,c
그러면 값 열에 정수 값 0x0065 대신 문자 값 101 'e'가 표시됩니다.
배열의 요소나 개체의 멤버에 형식 지정자를 적용하려면 각 요소나 멤버에 직접 적용해야 합니다. 배열이나 개체 전체를 대상으로 적용할 수는 없습니다. 예를 들어, 배열 nArray의 처음 네 요소를 문자 형식으로 보려고 하는 경우, 조사식 창에 다음과 같은 식을 입력합니다.
nArray[0],c
nArray[1],c
nArray[2],c
nArray[3],c
다음 표에서는 디버거에서 인식되는 형식 지정자에 대하여 설명합니다.
지정자 |
Format |
식 |
표시되는 값 |
---|---|---|---|
d,i |
부호 있는 10진 정수 |
0xF000F065, d |
-268373915 |
u |
부호 없는 10진 정수 |
0x0065, u |
101 |
o |
부호 없는 8진 정수 |
0xF065, o |
0170145 |
x,X |
16진 정수 |
61541, x |
0x0000f065 |
l,h |
d, i, u, o, x, X에 대한 long 또는 short 접두사 |
00406042,hx |
0x0c22 |
f |
부호 있는 부동 소수점 |
(3./2.), f |
1.500000 |
e |
부호 있는 과학적 표기법 |
(3./2.), e |
1.500000e+000 |
g |
부호 있는 부동 소수점 또는 부호 있는 과학적 표기법 중에서 짧은 형식 |
(3./2.), g |
1.5 |
c |
단일 문자 |
0x0065, c |
101 'e' |
s |
String |
0x0012fde8, s |
"Hello world" |
su |
유니코드 문자열 |
0x0012fde8, su |
"Hello world" |
s8 |
UTF-8 문자열 |
0x0012fde8, s8 |
"Hello world" |
hr |
HRESULT 또는 Win32 오류 코드. 이제는 디버거가 자동으로 HRESULT를 디코딩하므로 이 지정자가 필요하지 않습니다. |
0x00000000L, hr |
S_OK |
wc |
Window 클래스 플래그 |
0x00000040, wc |
WC_DEFAULTCHAR |
wm |
Windows 메시지 번호 |
0x0010, wm |
WM_CLOSE |
! |
원시 형식(모든 데이터 형식 뷰의 사용자 지정 내용 무시) |
/I |
4 |
다음 표에는 메모리 위치에 사용되는 형식 지정 기호가 있습니다. 메모리 위치 지정자를 위치로 평가되는 값이나 수식으로 사용할 수 있습니다.
기호 |
Format |
식 |
표시되는 값 |
---|---|---|---|
ma |
ASCII 문자 64개 |
ptr, ma |
0x0012ffac .4...0...".0W&.......1W&.0.:W..1...."..1.JO&.1.2.."..1...0y....1 |
m |
16바이트 16진수 뒤에 ASCII 문자 16개 |
ptr, m |
0x0012ffac B3 34 CB 00 84 30 94 80 FF 22 8A 30 57 26 00 00 .4...0...".0W&.. |
mb |
16바이트 16진수 뒤에 ASCII 문자 16개 |
ptr, mb |
0x0012ffac B3 34 CB 00 84 30 94 80 FF 22 8A 30 57 26 00 00 .4...0...".0W&.. |
mw |
단어 8개 |
ptr, mw |
0x0012ffac 34B3 00CB 3084 8094 22FF 308A 2657 0000 |
md |
더블워드 4개 |
ptr, md |
0x0012ffac 00CB34B3 80943084 308A22FF 00002657 |
mq |
쿼드워드 2개 |
ptr, mq |
0x0012ffac 7ffdf00000000000 5f441a790012fdd4 |
mu |
2바이트 유니코드 문자 |
ptr, mu |
0x0012fc60 8478 77f4 ffff ffff 0000 0000 0000 0000 |
포인터를 배열로 표시하는 크기 지정자
배열로 표시할 개체에 대한 포인터가 있는 경우 다음과 같이 정수를 사용하여 배열 요소의 개수를 지정할 수 있습니다.
ptr,10