diff --git a/printf.c b/printf.c index 8f2fc25..c597790 100644 --- a/printf.c +++ b/printf.c @@ -34,18 +34,17 @@ int _printf(const char *format, ...) buffer = _strcpy(buffer, next); BUFF_SIZE = _strlen(buffer); buff_idx += _strlen(next); - fmt_idx += 2; break; case 'c': /* add 1 byte and i++ */ - c = va_arg(args, int); - *(buffer + buff_idx + 1) = (char) c; - BUFF_SIZE = _strlen(buffer); + c = (char) va_arg(args, int); + *(buffer + buff_idx) = c; + BUFF_SIZE += 1; buff_idx += 1; - fmt_idx += 2; break; case '%': /*add 1 byte*/ break; } + fmt_idx += 2; } else { diff --git a/tests/char_print.c b/tests/char_print.c index 8a55f24..ff4af74 100644 --- a/tests/char_print.c +++ b/tests/char_print.c @@ -11,5 +11,5 @@ int main(void) char c = 97; _printf("cat: %c", c); - return (1); + return (0); }