TAKEAWAY 8.15 수 값을 출력할 때는 "%d"와 "%u" 서식을 사용한다.
반면, 비트 패턴을 출력할 때는 8진수보다는 16진수 서식을 사용하는 것이 좋다. 8비트 문자 타입을 따르는 최신 아키텍처의 경우 16진수 서식이 더 적합하다.
TAKEAWAY 8.16 비트 패턴을 출력할 때는 "%x" 서식을 사용한다.
또한 이 서식은 부호 없는 값을 받는다. 그래서 비트 집합에 대해 부호 없는 타입만 사용하는 것이 좋다. 16진수 값을 보고 이에 해당하는 비트 패턴을 떠올리기까지는 상당한 연습이 필요하다. 표 8-8은 이런 숫자와 값, 그리고 이들이 표현하는 비트 패턴을 간략히 정리한 것이다.
부동 소수점 서식의 경우, 선택의 폭이 훨씬 넓다. 요구 사항이 구체적이지 않다면 십진수 출력에 대해 범용 서식을 사용하는 것이 가장 간편하다.
▼ 표 8-7 printf류의 함수에 적용되는 서식 지정자
'd' 또는 'i' |
십진수 |
부호 있는 정수 |
'u' |
십진수 |
부호 없는 정수 |
'o' |
팔진수 |
부호 없는 정수 |
'x' 또는 'X' |
십육진수 |
부호 없는 정수 |
'e' 또는 'E' |
[-]d.ddd e±dd, "scientific" |
부동 소수점 |
'f' 또는 'F' |
[-]d.ddd |
부동 소수점 |
'g' 또는 'G' |
범용 e나 f |
부동 소수점 |
'a' 또는 'a' |
[-]0xh.hhhh p±d, 십육진수 |
부동 소수점 |
'%' |
'%' 문자 |
인수 변환 안 됨 |
'c' |
문자 |
정수 |
's' |
여러 문자 |
스트링 |
'p' |
주소 |
void* 포인터 |