From e36b552fa9c506efd2541fd10cd9d0bae627d523 Mon Sep 17 00:00:00 2001 From: lalgarra Date: Mon, 20 Oct 2025 21:44:35 +0200 Subject: [PATCH] Tests on %d with width, prec --- test_printf_bonus.c | 74 ++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 73 insertions(+), 1 deletion(-) diff --git a/test_printf_bonus.c b/test_printf_bonus.c index e9377ef..6b92f4b 100644 --- a/test_printf_bonus.c +++ b/test_printf_bonus.c @@ -6,7 +6,7 @@ /* By: lalgarra +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2025/10/15 18:54:32 by lalgarra #+# #+# */ -/* Updated: 2025/10/20 19:48:21 by lalgarra ### ########.fr */ +/* Updated: 2025/10/20 21:42:03 by lalgarra ### ########.fr */ /* */ /* ************************************************************************** */ @@ -249,6 +249,74 @@ static void test12() ft_printf("ret=%i\n", ret); } +static void test13() +{ + char prefix[138]; + char sfmt[138]; + int ret; + + strcpy(prefix, "test13: "); + strcpy(sfmt, "%%-9d,%%-10d,%%-11d,%%-12d,%%-13d,%%-14d,%%-15d:%-9d,%-10d,%-11d,%-12d,%-13d,%-14d,%-15d --eof; "); + printf("%s printf(): ", prefix); + ret = printf(sfmt, INT_MAX, INT_MIN, LONG_MAX, LONG_MIN, ULONG_MAX, 0, -42); + printf("ret=%i\n", ret); + fflush(stdout); + ft_printf("%sft_printf(): ", prefix); + ret = ft_printf(sfmt, INT_MAX, INT_MIN, LONG_MAX, LONG_MIN, ULONG_MAX, 0, -42); + ft_printf("ret=%i\n", ret); +} + +static void test14() +{ + char prefix[148]; + char sfmt[148]; + int ret; + + strcpy(prefix, "test14: "); + strcpy(sfmt, "%%09d,%%010d,%%011d,%%012d,%%013d,%%014d,%%015d:%09d,%010d,%011d,%012d,%013d,%014d,%015d--eof; "); + printf("%s printf(): ", prefix); + ret = printf(sfmt, INT_MAX, INT_MIN, LONG_MAX, LONG_MIN, ULONG_MAX, 0, -42); + printf("ret=%i\n", ret); + fflush(stdout); + ft_printf("%sft_printf(): ", prefix); + ret = ft_printf(sfmt, INT_MAX, INT_MIN, LONG_MAX, LONG_MIN, ULONG_MAX, 0, -42); + ft_printf("ret=%i\n", ret); +} + +static void test15() +{ + char prefix[158]; + char sfmt[158]; + int ret; + + strcpy(prefix, "test15: "); + strcpy(sfmt, "%%04d:%04d--eof; "); + printf("%s printf(): ", prefix); + ret = printf(sfmt, 9); + printf("ret=%i\n", ret); + fflush(stdout); + ft_printf("%sft_printf(): ", prefix); + ret = ft_printf(sfmt, 9); + ft_printf("ret=%i\n", ret); +} + +static void test16() +{ + char prefix[168]; + char sfmt[168]; + int ret; + + strcpy(prefix, "test16: "); + strcpy(sfmt, "%%.5d:%.5d,%.5d--eof; "); + printf("%s printf(): ", prefix); + ret = printf(sfmt, 17, 99); + printf("ret=%i\n", ret); + fflush(stdout); + ft_printf("%sft_printf(): ", prefix); + ret = ft_printf(sfmt, 17, 99); + ft_printf("ret=%i\n", ret); +} + static void test50() { char prefix[128]; @@ -297,6 +365,10 @@ int main(void) test10(); test11(); test12(); + test13(); + test14(); + test15(); + test16(); test50(); test99(); return (0);