출처 : http://blog.naver.com/pointer98/150046033124
포맷문자열 |
사용해야
할
인자타입 |
실제
내부
사용
변환
타입 |
기본진법 |
정밀도 |
%c |
int x |
(unsigned char)x |
1바이트
문자 | |
%lc |
wint_t x |
wchar_t a[2] = {x} |
2바이트
확장
문자 | |
%d |
int x |
(int)x |
10 |
1 |
%hd |
int x |
(short)x |
10 |
1 |
%ld |
long x |
(long)x |
10 |
1 |
%lld |
long long int x |
(long long int)x |
10 |
1 |
%i |
int x |
(int)x |
10 |
1 |
%hi |
int x |
(short)x |
10 |
1 |
%li |
long x |
(long)x |
10 |
1 |
%lli |
long long int x |
(long long int)x |
10 |
1 |
%f |
double x |
(double)x |
10 |
6 |
%Lf |
long double x |
(long double)x |
10 |
6 |
%F |
double x |
(double)x |
10 |
6 |
%LF |
long double x |
(long double)x |
10 |
6 |
%e |
double x |
(double)x |
10 |
6 |
%Le |
long double x |
(long double)x |
10 |
6 |
%E |
double x |
(double)x |
10 |
6 |
%LE |
long double x |
(long double)x |
10 |
6 |
%g |
double x |
(double)x |
10 |
6 |
%Lg |
long double x |
(long double)x |
10 |
6 |
%G |
double x |
(double)x |
10 |
6 |
%LG |
long double x |
(long double)x |
10 |
6 |
%s |
char x[] |
x[0]... |
1바이트
문자열 | |
%ls |
wchar_t x[] |
x[0]... |
2바이트
확장
문자열 | |
%p |
void *x |
(void *)x |
| |
%u |
int x |
(unsigned int)x |
10 |
1 |
%hu |
int x |
(unsigned short)x |
10 |
1 |
%lu |
long x |
(unsigned long)x |
10 |
1 |
%llu |
long long int x |
(unsigned long long int)x |
10 |
1 |
%o |
int x |
(unsigned int)x |
8 |
1 |
%ho |
int x |
(unsigned short)x |
8 |
1 |
%lo |
long x |
(unsigned long)x |
8 |
1 |
%llo |
long long int x |
(unsigned long long int)x |
8 |
1 |
%x |
int x |
(unsigned int)x |
16 |
1 |
%hx |
int x |
(unsigned short)x |
16 |
1 |
%lx |
long x |
(unsigned long)x |
16 |
1 |
%llx |
long long int x |
(unsigned long long int)x |
16 |
1 |
%X |
int x |
(unsigned int)x |
16 |
1 |
%hX |
int x |
(unsigned short)x |
16 |
1 |
%lX |
long x |
(unsigned long)x |
16 |
1 |
%llX |
long long int x |
(unsigned long long int)x |
16 |
1 |
%n |
int * x |
|
|
|
%hn |
short * x |
|
|
|
%ln |
long * x |
|
|
|
%% |
None |
'%' |
%문자
|
Escape문자
실제
문자 |
Escape 문자 |
의
미 |
" |
\" |
"문자 |
' |
\' |
'문자 |
? |
\? |
?문자 |
\ |
\\ |
\문자 |
BEL |
\a |
Beep 음 |
BS |
\b |
Backspace: 한
칸
뒤로 |
FF |
\f |
Form feed |
NL |
\n |
New line: 줄
바꿈, buffer 비움 |
CR |
\r |
Carriage return: 라인
처음으로 |
HT |
\t |
수평 tab |
VT |
\v |
수직 tab |
null |
\0 |
null문자 |
code values |
\d \dd \ddd |
8진수
코드값 |
code values |
\xh \xhh |
16진수
코드값
|
scanf()함수의 포맷 플래그
포맷문자열 |
사용
할
데이터
변수
타입 |
호출되는
내부
변환함수 |
기본진법 |
%c |
char x[] |
1바이트
문자 | |
%lc |
wchar_t x[] |
2바이트
확장
문자 | |
%d |
int * x |
strtol |
10 |
%hd |
short * x |
strtol |
10 |
%ld |
long * x |
strtol |
10 |
%lld |
long long int * x |
strtol |
10 |
%i |
int * x |
strtol |
10 |
%hi |
short * x |
strtol |
10 |
%li |
long * x |
strtol |
10 |
%lli |
long long int * x |
strtol |
10 |
%f |
float * x |
strtod |
10 |
%lf |
double * x |
strtod |
10 |
%Lf |
long double * x |
strtod |
10 |
%F |
float * x |
strtod |
10 |
%lF |
double * x |
strtod |
10 |
%LF |
long double * x |
strtod |
10 |
%e |
float * x |
strtod |
10 |
%le |
double * x |
strtod |
10 |
%Le |
long double * x |
strtod |
10 |
%E |
float * x |
strtod |
10 |
%lE |
double * x |
strtod |
10 |
%LE |
long double * x |
strtod |
10 |
%g |
float * x |
strtod |
10 |
%lg |
double * x |
strtod |
10 |
%Lg |
long double * x |
strtod |
10 |
%G |
float * x |
strtod |
10 |
%lG |
double * x |
strtod |
10 |
%LG |
long double * x |
strtod |
10 |
%s |
char x[] |
1바이트
문자열 | |
%ls |
wchar_t x[] |
2바이트
확장
문자열 | |
%u |
unsigned int * x |
strtoul |
10 |
%hu |
unsigned short * x |
strtoul |
10 |
%lu |
unsigned long * x |
strtoul |
10 |
%llu |
unsigned long long int * x |
strtoul |
10 |
%o |
unsigned int * x |
strtoul |
8 |
%ho |
unsigned short * x |
strtoul |
8 |
%lo |
unsigned long * x |
strtoul |
8 |
%llo |
unsigned long long int * x |
strtoul |
8 |
%x |
unsigned int * x |
strtoul |
16 |
%hx |
unsigned short * x |
strtoul |
16 |
%lx |
unsigned long * x |
strtoul |
16 |
%llx |
unsigned long long int * x |
strtoul |
16 |
%X |
unsigned int * x |
strtoul |
16 |
%hX |
unsigned short * x |
strtoul |
16 |
%lX |
unsigned long * x |
strtoul |
16 |
%llX |
unsigned long long int * x |
strtoul |
16 |
%p |
void ** x |
|
|
%n |
int * x |
|
|
%hn |
short * x |
|
|
%ln |
long * x |
|
|
%[...] |
char x[] |
|
|
%l[...] |
wchar_t x[] |
|
|
%% |
None |
|
[출처] printf(), scanf() 함수의 포맷문자열 |작성자 천지호와 라일리 |
'NativeCode > api' 카테고리의 다른 글
LoadLibrary, GetProcAddress, FreeLibrary, Name Mangling 해결 (0) | 2010.11.09 |
---|---|
IP, TCP, UDP, ICMP Checksum 계산 (0) | 2010.07.05 |
IpHlpApi MSDN (0) | 2010.07.04 |
SendARP (0) | 2010.07.03 |
[팁] Heap 메모리 검증하기.. | VC++ 일반 (0) | 2010.05.09 |