From 41f479ac2f605eab6b187372d33a09439d29557e Mon Sep 17 00:00:00 2001 From: hugodu69 Date: Tue, 23 Jun 2020 15:36:59 +0200 Subject: [PATCH] ajout main bonus --- main.c | 115 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 115 insertions(+) diff --git a/main.c b/main.c index be35286..44bb627 100644 --- a/main.c +++ b/main.c @@ -900,6 +900,17 @@ int main(int ac, char **av) printf("\n----------------------------------------------------------------\n"); printf("flag '''\n"); printf("----------------------------------------------------------------\n\n"); + PRINT("%'d", 1); + PRINT("%'d", 11); + PRINT("%'d", 111); + PRINT("%'d", 1111); + PRINT("%'d", 11111); + PRINT("%'d", 111111); + PRINT("%'d", 1111111); + PRINT("%'d", 11111111); + PRINT("%'d", 111111111); + PRINT("%'d", 1111111111); + PRINT("%'d", 11111111111); } if (ac == 2 || !strcmp(av[2], " ")) @@ -990,6 +1001,11 @@ int main(int ac, char **av) printf("\n----------------------------------------------------------------\n"); printf("specifier 'e'\n"); printf("----------------------------------------------------------------\n\n"); + PRINT("%e", 1); + PRINT("%e", -1); + PRINT("%e", 10); + PRINT("%e", 100); + PRINT("%e", 1000); } if (ac == 2 || !strcmp(av[2], "f")) @@ -997,6 +1013,7 @@ int main(int ac, char **av) printf("\n----------------------------------------------------------------\n"); printf("specifier 'f'\n"); printf("----------------------------------------------------------------\n\n"); + PRINT("%f", 1.2); } if (ac == 2 || !strcmp(av[2], "g")) @@ -1004,13 +1021,31 @@ int main(int ac, char **av) printf("\n----------------------------------------------------------------\n"); printf("specifier 'g'\n"); printf("----------------------------------------------------------------\n\n"); + PRINT("%g", 1.2); } if (ac == 2 || !strcmp(av[2], "n")) { printf("\n----------------------------------------------------------------\n"); printf("specifier 'n'\n"); + printf(" the specifier %%n go in the printf field like this :\n"); + printf(" printf(\"something%%n and more\", &var);\n"); + printf(" and it store into 'var' the number of chars already printed\n"); + printf(" it can be used to make a space before something to print :\n"); + printf(" |int n;\n"); + printf(" |printf(\"%%s: %%nfoo\\n\", \"hello\", &n);\n"); + printf(" |printf(\"%%*sbar\\n\", n, \"\");\n"); + printf(" |will print:\n"); + printf(" |hello: foo\n"); + printf(" | bar\n"); printf("----------------------------------------------------------------\n\n"); + int val; + PRINT("abcde%n", &val); + printf("%d\n", val); + PRINT("abcdefgh%n", &val); + printf("%d\n", val); + PRINT("abcde%nfgh", &val); + printf("%d\n", val); } if (ac == 2 || !strcmp(av[2], "h")) @@ -1018,6 +1053,8 @@ int main(int ac, char **av) printf("\n----------------------------------------------------------------\n"); printf("length 'h'\n"); printf("----------------------------------------------------------------\n\n"); + char ash = 'a'; + PRINT("%hc", ash); } if (ac == 2 || !strcmp(av[2], "hh")) @@ -1025,6 +1062,9 @@ int main(int ac, char **av) printf("\n----------------------------------------------------------------\n"); printf("length 'hh'\n"); printf("----------------------------------------------------------------\n\n"); + short int ashash = 1; + PRINT("%hhd", ashash); + PRINT("%hhs", "ashash"); } if (ac == 2 || !strcmp(av[2], "l")) @@ -1032,6 +1072,48 @@ int main(int ac, char **av) printf("\n----------------------------------------------------------------\n"); printf("length 'l'\n"); printf("----------------------------------------------------------------\n\n"); + PRINT("%d", 1); + PRINT("%d", 11); + PRINT("%d", 111); + PRINT("%d", 1111); + PRINT("%d", 11111); + PRINT("%d", 111111); + PRINT("%d", 1111111); + PRINT("%d", 11111111); + PRINT("%d", 111111111); + PRINT("%d", 1111111111); + + PRINT("%dbug", 11111111111); + PRINT("%d", 111111111111); + PRINT("%d", 1111111111111); + PRINT("%d", 11111111111111); + PRINT("%d", 111111111111111); + PRINT("%d", 1111111111111111); + PRINT("%d", 11111111111111111); + PRINT("%d", 111111111111111111); + PRINT("%d", 1111111111111111111); + + PRINT("%ld", 11111111111); + PRINT("%ld", 111111111111); + PRINT("%ld", 1111111111111); + PRINT("%ld", 11111111111111); + PRINT("%ld", 111111111111111); + PRINT("%ld", 1111111111111111); + PRINT("%ld", 11111111111111111); + PRINT("%ld", 111111111111111111); + PRINT("%ld", 1111111111111111111); + + PRINT("%ldbug", 11111111111111111111); + PRINT("%ld", 111111111111111111111); + PRINT("%ld", 1111111111111111111111); + PRINT("%ld", 11111111111111111111111); + PRINT("%ld", 111111111111111111111111); + PRINT("%ld", 1111111111111111111111111); + PRINT("%ld", 11111111111111111111111111); + PRINT("%ld", 111111111111111111111111111); + PRINT("%ld", 1111111111111111111111111111); + PRINT("%ld", 11111111111111111111111111111); + PRINT("%ld", 111111111111111111111111111111); } if (ac == 2 || !strcmp(av[2], "ll")) @@ -1039,6 +1121,39 @@ int main(int ac, char **av) printf("\n----------------------------------------------------------------\n"); printf("length 'll'\n"); printf("----------------------------------------------------------------\n\n"); + PRINT("%ld", 11111111111); + PRINT("%ld", 111111111111); + PRINT("%ld", 1111111111111); + PRINT("%ld", 11111111111111); + PRINT("%ld", 111111111111111); + PRINT("%ld", 1111111111111111); + PRINT("%ld", 11111111111111111); + PRINT("%ld", 111111111111111111); + PRINT("%ld", 1111111111111111111); + + PRINT("%ldbug", 11111111111111111111); + PRINT("%ld", 111111111111111111111); + PRINT("%ld", 1111111111111111111111); + PRINT("%ld", 11111111111111111111111); + PRINT("%ld", 111111111111111111111111); + PRINT("%ld", 1111111111111111111111111); + PRINT("%ld", 11111111111111111111111111); + PRINT("%ld", 111111111111111111111111111); + PRINT("%ld", 1111111111111111111111111111); + PRINT("%ld", 11111111111111111111111111111); + PRINT("%ld", 111111111111111111111111111111); + + PRINT("%lld", 11111111111111111111); + PRINT("%lld", 111111111111111111111); + PRINT("%lld", 1111111111111111111111); + PRINT("%lld", 11111111111111111111111); + PRINT("%lld", 111111111111111111111111); + PRINT("%lld", 1111111111111111111111111); + PRINT("%lld", 11111111111111111111111111); + PRINT("%lld", 111111111111111111111111111); + PRINT("%lld", 1111111111111111111111111111); + PRINT("%lld", 11111111111111111111111111111); + PRINT("%lld", 111111111111111111111111111111); } if (ac == 2 || !strcmp(av[2], "repetition"))