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 /ft_printf.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 'ft_printf.c')
| -rw-r--r-- | ft_printf.c | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/ft_printf.c b/ft_printf.c index 9817e6c..c7bc473 100644 --- a/ft_printf.c +++ b/ft_printf.c @@ -7,6 +7,9 @@ int ft_printf(const char *format, ...) { int i; va_list ap; + /* char *convertions_flags; */ + + /* convertions_flags = "cspdiuxX%"; */ va_start(ap, format); i = -1; @@ -23,7 +26,8 @@ int ft_printf(const char *format, ...) ft_putstr(va_arg(ap, char*)); break; case 'p': - print_addr(va_arg(ap, void*)); + ft_putstr("0x"); + PUTXNBR(va_arg(ap, int)); break; case 'd': ft_putnbr(va_arg(ap, int)); @@ -35,9 +39,15 @@ int ft_printf(const char *format, ...) ft_putunbr(va_arg(ap, unsigned int)); break; case 'x': - ft_putxnbr(va_arg(ap, int)); + ft_putstr("0x"); + PUTXNBR(va_arg(ap, int)); break; case 'X': + ft_putstr("0x"); + PUTXMAJNBR(va_arg(ap, int)); + break; + case '%': + ft_putchar('%'); break; } } @@ -50,6 +60,6 @@ int ft_printf(const char *format, ...) int main() { - ft_printf("bonjour\n"); + ft_printf("b%conjo %X ur%p\n", 'r', 0xec54, NULL); return 0; } |
