diff options
| author | Dominik Kaiser | 2024-05-08 13:14:19 +0200 |
|---|---|---|
| committer | Dominik Kaiser | 2024-05-08 13:14:19 +0200 |
| commit | 95ccc46ad62c59e648679acad8b44ba5d4465e3d (patch) | |
| tree | c053e4c692039d151cefa26759bee90d31d8c0a0 /libft/ft_putnbr_fd.c | |
| parent | 42289aa55c7dafe8fffbcdfb0e02f089b7b83afb (diff) | |
| download | pipex-95ccc46ad62c59e648679acad8b44ba5d4465e3d.tar.gz pipex-95ccc46ad62c59e648679acad8b44ba5d4465e3d.zip | |
Diffstat (limited to 'libft/ft_putnbr_fd.c')
| -rw-r--r-- | libft/ft_putnbr_fd.c | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/libft/ft_putnbr_fd.c b/libft/ft_putnbr_fd.c new file mode 100644 index 0000000..96f5f4b --- /dev/null +++ b/libft/ft_putnbr_fd.c @@ -0,0 +1,38 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_putnbr_fd.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: dkaiser <dkaiser@student.42heilbronn.de +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2024/03/10 10:43:09 by dkaiser #+# #+# */ +/* Updated: 2024/03/10 13:20:59 by dkaiser ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "libft.h" + +static void putnbr_fd_rec(int n, int fd) +{ + char c; + + c = '0' + n % 10; + if (n > 9) + putnbr_fd_rec(n / 10, fd); + write(fd, &c, 1); +} + +void ft_putnbr_fd(int n, int fd) +{ + if (n == -2147483648) + { + write(fd, "-2147483648", 11); + return ; + } + if (n < 0) + { + write(fd, "-", 1); + n *= -1; + } + putnbr_fd_rec(n, fd); +} |
