ft_printf/libft/ft_putnbr_fd.c
2024-10-15 12:43:54 +02:00

43 lines
1.3 KiB
C

/* ************************************************************************** */
/* */
/* ::: o_ :::::: ::: */
/* ft_putnbr_fd.c :+: / :+::+: :+: */
/* +:+ > +:++:+ +:+ */
/* By: whaffman <whaffman@student.codam.nl> +#+ +:+ +#++#++:++#++ */
/* +#+ +#+#+ +#++#+ +#+ \o/ */
/* Created: 2024/10/10 17:00:25 by whaffman #+#+# #+#+# #+# #+# | */
/* Updated: 2024/10/10 17:00:25 by whaffman ### ### ### ### / \ */
/* */
/* ************************************************************************** */
#include <unistd.h>
#include "libft.h"
void ft_putnbr_fd(int n, int fd)
{
long ln;
long divider;
char c;
if (fd < 0)
return ;
ln = n;
divider = 1;
if (n < 0)
{
if (!write(fd, "-", 1))
return ;
ln *= -1;
}
while (divider * 10 <= ln)
divider *= 10;
while (divider)
{
c = ln / divider + '0';
if (!write(fd, &c, 1))
return ;
ln %= divider;
divider /= 10;
}
}