libft/ft_putnbr_fd.c

60 lines
1.5 KiB
C
Raw Normal View History

/* ************************************************************************** */
/* */
/* ::: :::::::: */
/* ft_putnbr_fd.c :+: :+: :+: */
/* +:+ +:+ +:+ */
/* By: kcolin <marvin@42.fr> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2024/10/18 15:45:29 by kcolin #+# #+# */
/* Updated: 2024/10/18 16:16:54 by kcolin ### ########.fr */
/* */
/* ************************************************************************** */
#include "libft.h"
void ft_putnbr_fd(int n, int fd)
{
char buf[10];
int buf_idx;
long num;
num = n;
buf_idx = 10;
if (num < 0)
{
ft_putchar_fd('-', fd);
num = -num;
}
if (num == 0)
{
ft_putchar_fd('0', fd);
return ;
}
while (num != 0)
{
buf_idx--;
buf[buf_idx] = (num % 10) + '0';
num /= 10;
}
write(fd, buf + buf_idx, 10 - buf_idx);
}
/*
#include <limits.h>
int main(void)
{
ft_putnbr_fd(0, 1);
ft_putchar_fd('\n', 1);
ft_putnbr_fd(42, 1);
ft_putchar_fd('\n', 1);
ft_putnbr_fd(-42, 1);
ft_putchar_fd('\n', 1);
ft_putnbr_fd(INT_MAX, 1);
ft_putchar_fd('\n', 1);
ft_putnbr_fd(INT_MIN, 1);
ft_putchar_fd('\n', 1);
return (0);
}
*/