[ft_printf] Final : Mandatory part

Cadet_42ยท2021๋…„ 8์›” 14์ผ
0

ft_printf

๋ชฉ๋ก ๋ณด๊ธฐ
5/6
post-thumbnail

๐Ÿ”ฎ ft_printf.c

  • int pritchar_num(const char **str, va_list ap) - ๋ฌธ์ž์—ด์— csxXidup% ํ•ด๋‹น๋˜๋Š” ๋ฌธ์ž๊ฐ€ ์žˆ์œผ๋ฉด, ํ•ด๋‹น ๊ฐ’์„ ํ”„๋ฆฐํŠธ ํ•˜๋Š” ํ•จ์ˆ˜

  • int ft_printf(const char *str, ...) - ๊ณผ์ œ์—์„œ ์š”๊ตฌํ•œ ft_printf() ์ตœ์ข… ํ•จ์ˆ˜

๐Ÿ”ฎ ft_printf_num.c

  • int print_di(const char **str, va_list ap) - ๋ฌธ์ž์—ด str์—์„œ d์™€ i๋ฅผ ๋ฐœ๊ฒฌํ•˜๋ฉด, ํ•ด๋‹น ๋ฌธ์ž๊ฐ’์„ ํ”„๋ฆฐํŠธํ•จ

  • int print_u(const char **str, va_list ap)- ๋ฌธ์ž์—ด str์—์„œ u๋ฅผ ๋ฐœ๊ฒฌํ•˜๋ฉด, ํ•ด๋‹น ๋ฌธ์ž๊ฐ’์„ ํ”„๋ฆฐํŠธํ•จ

  • int ft_putnbr(size_t nbr, char *base) - putnbr๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ, 16 ์ง„์ˆ˜๋ฅผ ํ‘œํ˜„ํ•˜๋„๋ก ํ•˜์˜€๋‹ค.

  • int printf_pointer(const char **str, va_list ap) - ๋ฌธ์ž์—ด str์•ˆ์— p๊ฐ€ ๋ณด์ด๋ฉด, ft_putnbr๋‚ด์žฅํ•จ์ˆ˜๋ฅผ ์ด์šฉํ•˜์—ฌ ํ•ด๋‹น ๊ฐ’์„ ํ”„๋ฆฐํŠธํ•œ๋‹ค.

  • int printf_num(const char **str, va_list ap) - ๋ฌธ์ž์—ด str์•ˆ์— x,X ๊ฐ’์ด ๋ณด์ด๋ฉด, ft_putnbr๋‚ด์žฅํ•จ์ˆ˜๋ฅผ ์ด์šฉํ•˜์—ฌ ํ•ด๋‹น ๊ฐ’์„ ํ”„๋ฆฐํŠธํ•œ๋‹ค

๐Ÿ”ฎ ft_printf_string.c

  • int write_null(void) - string ํ•จ์ˆ˜์—์„œ null์ด ๋‚˜์˜ฌ๊ฒฝ์šฐ, null์„ ์ ๊ณ  ํ•ด๋‹น length๋ฅผ 6์„ ๋ฆฌํ„ดํ•œ๋‹ค.

  • int printpercent(const char **str) - ๋ฌธ์ž์—ด str์—์„œ % ๊ฐ€ ๋ณด์ด๋ฉด,
    %๋ฅผ ์ ๊ณ , ํ•ด๋‹น length์ธ 1์„ ๋ฆฌํ„ดํ•œ๋‹ค.

  • int print_s(const char **str, va_list ap) - ๋ฌธ์ž์—ด str์—์„œ s๊ฐ€ ๋ณด์ด๋ฉด, ํ•ด๋‹น ๊ฐ’์„ ํ”„๋ฆฐํŠธํ•˜๊ณ , s๊ธธ์ด๊ฐ’์„ ๋ฆฌํ„ดํ•œ๋‹ค.

๐Ÿ”ฎ ft_printf_utils.c

  • static int ft_untlen(unsigned int n) - ft_utoa์— ํ•„์š”ํ•œ ํ•จ์ˆ˜ (malloc์‹œ, ํ•ด๋‹น ๊ธธ์ด์— ํ•ด๋‹น ํ•˜๋Š” ๊ฐ’์„ ๋ฉ”๋ชจ๋ฆฌ์— ์ €์žฅํ•ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ)

  • char *ft_utoa(unsigned int n) - ๋ฌธ์ž์—ด str์— ๋ณด์ด๋Š” u๋ฅผ ํ”„๋ฆฐํŠธ ํ• ๋•Œ,unsigned int๊ฐ€ ํŒŒ๋ผ๋ฏธํ„ฐ๋กœ ์‚ฌ์šฉ๋˜์–ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— itoa์˜ ๋ณ€ํ˜•์ธ utoa ํ•จ์ˆ˜๋ฅผ ์ƒ์„ฑํ•จ.

  • size_t ft_strlen(const char *str) - str ๋ฌธ์ž์—ด์˜ ๊ธธ์ด๋ฅผ ๊ตฌํ•˜๋Š” ํ•จ์ˆ˜

  • static int ft_intlen(int n) - ft_untlen๊ณผ๋Š” ๋‹ค๋ฅด๊ฒŒ int n์„ ํŒŒ๋ผ๋ฏธํ„ฐ๋กœ ๋ฐ›์œผ๋ฉฐ, ft_itoaํ•จ์ˆ˜์—์„œ malloc ๋™์  ํ• ๋‹น์‹œ ์‚ฌ์šฉํ•จ

  • ft_itoa(int n) - ํŒŒ๋ผ๋ฏธํ„ฐ๋Š” int n์ด๋ฉฐ, ๋ฌธ์ž์—ด str์—์„œ d๋‚˜ i๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ• ๋•Œ ft_itoa๋ฅผ ์‚ฌ์šฉํ•จ.

profile
์•ˆ๋…•ํ•˜์„ธ์š”! ๊ฐœ๋ฐœ๊ณต๋ถ€๋ฅผ ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ์‚ฌํžˆ ๋ฐฐ์šฐ๊ฒ ์Šต๋‹ˆ๋‹ค. ;)

0๊ฐœ์˜ ๋Œ“๊ธ€