diff --git a/ft_printf.c b/ft_printf.c index 57dc1a2..0d3b074 100644 --- a/ft_printf.c +++ b/ft_printf.c @@ -102,6 +102,15 @@ int main(void) // printf("(\"%%X\",124) ft : "); ft_printf("%X\n", 124); printf("(\"%%X\",124) : "); printf("%X\n", 124); printf("\n"); + // printf("(\"%%X\",123456) ft : "); ft_printf("%X\n", 123456); + printf("(\"%%X\",123456) : "); printf("%X\n", 123456); printf("\n"); + + // printf("(\"%%X\",0x1E240) ft : "); ft_printf("%X\n", 0x1E240); + printf("(\"%%X\",0x1E240) : "); printf("%X\n", 0x1E240); printf("\n"); + + // printf("(\"%%i\",0x1E240) ft : "); ft_printf("%i\n", 0x1E240); + printf("(\"%%i\",0x1E240) : "); printf("%i\n", 0x1E240); printf("\n"); + printf("-----------------------------------------------\n"); printf("- flags : -0.* -\n"); printf("- taille de champ minimale -\n"); @@ -124,6 +133,9 @@ int main(void) // printf("(\"%%1i\",12) ft : "); ft_printf("'%1i'\n", 12); printf("(\"%%1i\",12) : "); printf("'%1i'\n", 12); printf("\n"); + // printf("(\"%%0i\",0) ft : "); ft_printf("'%0i'\n", 0); + printf("(\"%%0i\",0) : "); printf("'%0i'\n", 0); printf("\n"); + printf("- flag - --------------------------------------\n\n"); // printf("(\"%%-3s\",\"a\") ft : "); ft_printf("'%-3s'\n", "a"); @@ -160,10 +172,32 @@ int main(void) // printf("(\"%%-*i\",3,1) ft : "); ft_printf("'%-*i'\n", 3, 1); printf("(\"%%-*i\",3,1) : "); printf("'%-*i'\n", 3, 1); printf("\n"); - printf("- flag * --------------------------------------\n\n"); + printf("- flag . --------------------------------------\n\n"); + // printf("(\"%%.5s\",\"12\") ft : "); ft_printf("'%.5s'\n", "12"); + printf("(\"%%.5s\",\"12\") : "); printf("'%.5s'\n", "12"); printf("\n"); + + // printf("(\"%%.5i\",12) ft : "); ft_printf("'%.5i'\n", 12); printf("(\"%%.5i\",12) : "); printf("'%.5i'\n", 12); printf("\n"); + // printf("(\"%%.7X\",8645) ft : "); ft_printf("'%.7X'\n", 8645); + printf("(\"%%.7X\",8645) : "); printf("'%.7X'\n", 8645); printf("\n"); + + // printf("(\"%%7.7X\",8645) ft : "); ft_printf("'%7.7X'\n", 8645); + printf("(\"%%7.7X\",8645) : "); printf("'%7.7X'\n", 8645); printf("\n"); + + // printf("(\"%%10.7X\",8645) ft : "); ft_printf("'%10.7X'\n", 8645); + printf("(\"%%10.7X\",8645) : "); printf("'%10.7X'\n", 8645); printf("\n"); + + // printf("(\"%%7.10X\",8645) ft : "); ft_printf("'%7.10X'\n", 8645); + printf("(\"%%7.10X\",8645) : "); printf("'%7.10X'\n", 8645); printf("\n"); + + // printf("(\"%%.0i\",0) ft : "); ft_printf("'%.0i'\n", 0); + printf("(\"%%.0i\",0) : "); printf("'%.0i'\n", 0); printf("\n"); + + // printf("(\"%%.0X\",0) ft : "); ft_printf("'%.0X'\n", 0); + printf("(\"%%.0X\",0) : "); printf("'%.0X'\n", 0); printf("\n"); + printf("-----------------------------------------------\n"); printf("- errors -\n"); printf("-----------------------------------------------\n\n"); @@ -183,6 +217,11 @@ int main(void) // printf("(\"%%-010s\",str) ft : "); ft_printf("'%-010s'\n", str); // printf("(\"%%-010s\",str) : "); printf("'%-010s'\n", str); printf("\n"); + // printf("(\"%%X\",124) ft : "); ft_printf("%X\n", 124); + // printf("(\"%%X\",1E240) : "); printf("%X\n", 1E240); printf("\n"); + + // printf("(\"%%010.7X\",8645) : "); printf("'%010.7X'\n", 8645); printf("\n"); + printf("-----------------------------------------------\n"); printf("- BONUS -\n"); @@ -190,6 +229,30 @@ int main(void) printf("- flags : l ll h hh # ' + -\n"); printf("-----------------------------------------------\n\n"); + // printf("(\"%%#X\",8645) : "); + // printf("'%#X' \n", 8645); + // + // printf("(\"%%#.7X\",8645) : "); + // printf("'%#.7X' \n", 8645); + // + // printf("(\"%%#010.7X\",8645) : "); + // printf("'%#010.7X' \n", 8645); + // + // printf("(\"%%#10.7X\",8645) : "); + // printf("'%#10.7X' \n", 8645); + // + // printf("(\"%%#10X\",8645) : "); + // printf("'%#10X' \n", 8645); + // + // printf("(\"%%#.10X\",8645) : "); + // printf("'%#.10X' \n", 8645); + // + // printf("(\"%%#10.10X\",8645) : "); + // printf("'%#10.10X' \n", 8645); + // + // printf("(\"%%#010X\",8645) : "); + // printf("'%#010X' \n", 8645); + // printf("-----------------------------------------------\n"); // printf("- ADD -\n"); // printf("- flags : $ -\n"); diff --git a/main.c b/main.c deleted file mode 100644 index 4dabe35..0000000 --- a/main.c +++ /dev/null @@ -1,128 +0,0 @@ -#include -#include - -int main(void) -{ - - printf("- conversions : cspdiuxX%% ---------------------\n"); - printf("------- flags : -0.* --------------------------\n\n"); - - printf("(\"%%X\",8645) : "); - printf("'%X' \n", 8645); - - printf("(\"%%04X\",8645) : "); - printf("'%04X' \n", 8645); - - printf("(\"%%07X\",8645) : "); - printf("'%07X' \n", 8645); - - printf("(\"%%7X\",8645) : "); - printf("'%7X' \n", 8645); - - printf("(\"%%.7X\",8645) : "); - printf("'%.7X' \n", 8645); - - printf("(\"%%7.7X\",8645) : "); - printf("'%7.7X' \n", 8645); - - printf("(\"%%10.7X\",8645) : "); - printf("'%10.7X' \n", 8645); - - printf("(\"%%010.7X\",8645) : "); - printf("'%010.7X' \n", 8645); - - printf("(\"%%010X\",8645) : "); - printf("'%010X' \n", 8645); - - printf("\n"); - - printf("(\"%%#X\",8645) : "); - printf("'%#X' \n", 8645); - - printf("(\"%%#.7X\",8645) : "); - printf("'%#.7X' \n", 8645); - - printf("(\"%%#010.7X\",8645) : "); - printf("'%#010.7X' \n", 8645); - - printf("(\"%%#10.7X\",8645) : "); - printf("'%#10.7X' \n", 8645); - - printf("(\"%%#10X\",8645) : "); - printf("'%#10X' \n", 8645); - - printf("(\"%%#.10X\",8645) : "); - printf("'%#.10X' \n", 8645); - - printf("(\"%%#10.10X\",8645) : "); - printf("'%#10.10X' \n", 8645); - - printf("(\"%%#010X\",8645) : "); - printf("'%#010X' \n", 8645); - - return (0); -} - - // usage : - // %[flags][width][.precision][length]specifier - // - // [specifiers] - // c character - // s string of characters - // p pointer adress - // d (or i) signed decimal integer - // i (or d) signed decimal integer - // u unsigned decimal integer - // x unsigned hexadecimal integer - // X unsigned hexadecimal integer (capital letters) - //( n nothing printed - //( f decimal floating point - //( g uses the shorter of %e or %f - //( e scientific notation (mantissa/exponent) using e - //((E scientific notation (mantissa/exponent) using E - //((G uses the shorter of %E or %f - //((o signed octal - // - // [flags] - // - left-justify within the given field width - // 0 left-pads the number with zeroes (0) instead of spaces, where - // padding is specified (see width sub-specifier) - //( + forces to precede the result with a plus or minus sign even for - // positive numbers) - //( (space) if no sign is going to be written, a blank space is inserted - // before the value) - //( # used with o, x or X specifiers the value is preceded with 0, 0x - // or 0X respectively for values different than zero. Used with e, - // E and f, it forces the written output to contain a decimal point - // even if no digits would follow. By default, if no digits follow, - // no decimal point is written. Used with g or G the reult is the - // same as with e or E but trailing zeros are not removed) - // - // [width] - // (nbr) minimum number of characters to be printed. if the value to be - // printed is shorter than this number, the result is padded with - // blank spaces. The value is not truncated even if the result is - // larger - // * the width is not specified in the format string, but as an - // additional integer value argument preceding the argument that - // has to be formatted - // - // [.precision] - // .nbr fot integer specifiers (d,i,o,x,X) - precision specifies the - // minimum number of digits to be written. If the value to be - // written is shorter than this number, the result is padded with - // leading zeros. The value is not truncated even if the result is - // longer. A precision of 0 means that no character is written for - // the value 0. For e, E and f specifiers − this is the number of - // digits to be printed after the decimal point. For g and G - // specifiers − This is the maximum number of significant digits - // to be printed. For s − this is the maximum number of characters - // to be printed. By default all characters are printed until the - // ending null character is encountered. For c type − it has no - // effect. When no precision is specified, the default is 1. If the - // period is specified without an explicit value for precision, 0 - // is assumed - // .* the precision is not specified in the format string, but as an - // additional integer value argument preceding the argument that - // has to be formated - //