libftprintf.a
*.c
, */*.c
, *.h
, */*.h
, Makefile
all, clean, fclean, re, bonus
malloc, free, write, va_start, va_arg, va_copy, va_end
실제 printf를 모방한 함수인 ft_printf가 포함된 라이브러리를 작성
ft_printf의 프로토타입은 int ft_printf(const char *, ...)
libc의 printf 함수를 리코딩해야 한다
다음과 같은 변환을 관리 : cspdiuxX% (i == d)
-0.*
및 모든 변환의 최소 필드 너비 플래그 조합을 관리
-
: 왼쪽 정렬0
: 출력하는 폭의 남는 공간에 0으로 채움.숫자
: 지정한 숫자만큼 소수점 아래 자리 출력숫자
: 지정한 숫자만큼 폭을 지정하여 출력, 실수는 .(점)
, e+
까지 폭에 포함libtool 명령을 사용할 수 없으므로 ar 명령을 사용하여 libralier를 만들어야 한다
필수 부분이 완벽하지 않으면 보너스는 생각하지도 마세요.
• 모든 보너스를 수행할 필요는 없다
• 다음 변환 중 하나 이상을 관리합니다 : n f g e
• 하나 이상의 플래그를 관리합니다 : l ll h hh
• 다음 플래그를 모두 관리합니다 : '#', '(공백)', '+'
- # : 진법에 맞게 숫자 앞에 0, 0x, 0X를 붙임
- '(공백)' : 양수일 때는 부호를 출력하지 않고 공백으로 표시, 음수 일 때는 - 부호 출력
- + : 양수일 때는 + 부호, 음수일 때는 - 부호 출력