diff options
Diffstat (limited to 'printer.c')
| -rw-r--r-- | printer.c | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/printer.c b/printer.c new file mode 100644 index 0000000..1484165 --- /dev/null +++ b/printer.c @@ -0,0 +1,42 @@ +#include <unistd.h> +#include "ft_printf.h" + +void ft_putchar(char c) +{ + write(STDOUT_FILENO, &c, 1); +} + +void ft_putstr(char *str) +{ + while (*str) + write(STDOUT_FILENO, str++, 1); +} + +void ft_putnbr(int n) +{ + unsigned int p_n; + + p_n = n; + if (n < 0) + { + ft_putchar('-'); + p_n = -n; + } + if (p_n > 9) + ft_putnbr(p_n / 10); + ft_putchar(p_n % 10 + '0'); +} + +void ft_putxnbr(unsigned int n, char *hex_symbols) +{ + if (n > 15) + ft_putxnbr(n / 16, hex_symbols); + ft_putchar(hex_symbols[n % 16]); +} + +void ft_putunbr(unsigned int n) +{ + if (n > 9) + ft_putunbr(n / 10); + ft_putchar(n % 10 + '0'); +} |
