더북(TheBook)

TAKEAWAY 8.18 서식 지정자를 정확히 쓰지 않으면 의도하지 않은 동작이 발생할 수 있다.

좋은 컴파일러는 잘못 지정한 서식에 대해 경고 메시지를 출력해 주는데, 이런 경고는 지나치지 말고 해결해야 한다. 또한 세 가지 의미 타입에 대한 특수한 지정자가 있다. 그 중에서도 "%zu"는 굉장히 유용한데 size_t에 대응되는 기본 타입을 몰라도 되기 때문이다.

▼ 표 8-9 printf류 함수의 서식 지정자. float 인수는 double로 변환된 후 처리된다.

문자

타입

변환

"hh"

char 타입

정수

"h"

short 타입

정수

""

signed, unsigned

정수

"l"

long 정수 타입

정수

"ll"

long long 정수 타입

정수

"j"

intmax_t, uintmax_t

정수

"z"

size_t

정수

"t"

ptrdiff_t

정수

"L"

long double

부동 소수점

▼ 표 8-10 printf류 함수에 대한 서식 플래그

문자

의미

변환

"#"

대체 서식( 0x 접두어)

"aAeEfFgGoxX"

"0"

0 패딩

숫자

"-"

왼쪽 조정(left adjustment)

모든 타입

" "

양의 값은 ' ', 음의 값은 '-'

부호 있는 타입

"+"

양의 값은 '+', 음의 값은 '-'

부호 있는 타입

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.