diff options
| author | Cabergs Charles <cacharle@e-r5-p7.s19.be> | 2019-10-09 12:36:59 +0200 |
|---|---|---|
| committer | Cabergs Charles <cacharle@e-r5-p7.s19.be> | 2019-10-09 12:36:59 +0200 |
| commit | e1e7e692a26ab68dca25ea02ff8bed72c3c12e8e (patch) | |
| tree | 77721db671c769c4b1caf86621d3580eea3cd97c /utils.c | |
| parent | 8f3e1c37b67ae18ece6140e497e48139c43f8253 (diff) | |
| download | ft_printf-e1e7e692a26ab68dca25ea02ff8bed72c3c12e8e.tar.gz ft_printf-e1e7e692a26ab68dca25ea02ff8bed72c3c12e8e.tar.bz2 ft_printf-e1e7e692a26ab68dca25ea02ff8bed72c3c12e8e.zip | |
Added hexdecimal support
Diffstat (limited to 'utils.c')
| -rw-r--r-- | utils.c | 42 |
1 files changed, 42 insertions, 0 deletions
@@ -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'); +} |
