From 001786c8ec464b1ae3e6321acfd984227cb1bbee Mon Sep 17 00:00:00 2001 From: Charles Date: Wed, 30 Oct 2019 04:58:00 +0100 Subject: Added flags for x and X --- convert_uint.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'convert_uint.c') diff --git a/convert_uint.c b/convert_uint.c index bf28679..239e47d 100644 --- a/convert_uint.c +++ b/convert_uint.c @@ -3,15 +3,19 @@ char *convert_uint(va_list ap, t_pformat *pformat) { - unsigned int n; + long long unsigned int n; if (pformat->flags & FLAG_SHORT) - n = va_arg(ap, unsigned short); + n = va_arg(ap, int); else if (pformat->flags & FLAG_SHORT_SHORT) - n = va_arg(ap, unsigned char); + n = va_arg(ap, int); + else if (pformat->flags & FLAG_LONG) + n = va_arg(ap, long unsigned int); + else if (pformat->flags & FLAG_LONG_LONG) + n = va_arg(ap, long long unsigned int); else n = va_arg(ap, unsigned int); - char *str = ft_itoa_base(n, "0123456789"); + char *str = ft_itoa_unsigned_base(n, "0123456789"); str = handle_precision(pformat, str); str = handle_padding(pformat, str); return (str); -- cgit