From 40ad9bfe202f72a5b52eed8ff38da9b27de12adb Mon Sep 17 00:00:00 2001 From: yctct Date: Thu, 16 Apr 2026 18:25:12 +0200 Subject: First commit --- lib/ft_putnbr_fd.c | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 lib/ft_putnbr_fd.c (limited to 'lib/ft_putnbr_fd.c') diff --git a/lib/ft_putnbr_fd.c b/lib/ft_putnbr_fd.c new file mode 100644 index 0000000..03c3a3a --- /dev/null +++ b/lib/ft_putnbr_fd.c @@ -0,0 +1,40 @@ +/* +Libft Copyright (C) 2026 yctct + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 3 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + +#include "libft.h" + +void ft_putnbr_fd(int n, int fd) +{ + if (n == -2147483648) + ft_putstr_fd("-2147483648", fd); + else if (n < 0) + { + ft_putchar_fd('-', fd); + n = -n; + ft_putnbr_fd(n, fd); + } + else if (n == 0) + ft_putchar_fd('0', fd); + else if (n > 9) + { + ft_putnbr_fd(n / 10, fd); + ft_putchar_fd((n % 10) + 48, fd); + } + else + ft_putchar_fd(n + 48, fd); +} + -- cgit v1.2.3