이번 프로젝트는 stdio.h
기본 라이브러리에 포함되어 있는 printf
함수의 일부 기능들을 직접 구현하는 것이다.
<aside>
💡 printf
의 f
는 formatted
의 약자이며, 서식화된 출력을 지원한다는 의미이다!
</aside>
printf
의 많은 필드 중에서 flag
필드의 -
, 0
, .
, *
그리고 width
및 .precision
필드, type
필드의 c
, s
, p
, d
, i
, u
, x
, X
, %
만 구현 하면된다.
실제 printf
의 함수와 비교하면서 구현한다.
printf
함수의 인자로 주어지는 일반적인 문자열은 출력 스트림에 그대로 전달되어 출력을 하게 되지만, %
로 시작하는 Format Tag(형식 태그)
는 추가 인자를 받아 출력 스트림에 어떻게 출력해야 할지 가이드를 제공한다. 형식 태그
는 %
와 Format Specifier (서식 지정자)
로 구성되어 서식 지정자
에 따라 다양한 해석 방식을 나타낸다.
아래 예시를 살펴보면, %
를 제외한 문자열들은 그대로 출력된다.
pritnf("Color %s, Number %d, Float %4.2f", "red", 123456, 3.14);
printf
함수의 Format Placeholder Syntax(서식 표기 구문)
은 %
로 시작하는 형식 태그
로 표기 되며, 그 구문은 아래와 같다.