출처 : 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

 

 

'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

+ Recent posts