resolue probleme signe moins avec flag zero mais erreur norme
This commit is contained in:
24
main.c
24
main.c
@@ -301,7 +301,26 @@ int main(int ac, char **av)
|
|||||||
// PRINT("%.0i", 000);
|
// PRINT("%.0i", 000);
|
||||||
// PRINT("%.0X", 0);
|
// PRINT("%.0X", 0);
|
||||||
// PRINT("%08i", 33333);
|
// PRINT("%08i", 33333);
|
||||||
PRINT("%.i", 0);
|
// PRINT("%.i", 0);
|
||||||
|
PRINT("%+d", 12);
|
||||||
|
PRINT("%+d", -12);
|
||||||
|
PRINT("%+i", 12);
|
||||||
|
PRINT("%+i", -12);
|
||||||
|
PRINT("%+05i", -12);
|
||||||
|
PRINT("%05i", -12);
|
||||||
|
PRINT("%07.5i", -12);
|
||||||
|
// PRINT("%+u", 12);
|
||||||
|
// PRINT("%+u", -12);
|
||||||
|
// PRINT("%+x", 12);
|
||||||
|
// PRINT("%+x", -12);
|
||||||
|
// PRINT("%+X", 12);
|
||||||
|
// PRINT("%+X", -12);
|
||||||
|
// PRINT("%+c", 12);
|
||||||
|
// PRINT("%+c", -12);
|
||||||
|
// PRINT("%+s", "12");
|
||||||
|
// PRINT("%+s", "-12");
|
||||||
|
// PRINT("%+p", 12);
|
||||||
|
// PRINT("%+p", -12);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ////////////////////////////////////////////////////////////////// */
|
/* ////////////////////////////////////////////////////////////////// */
|
||||||
@@ -349,6 +368,7 @@ int main(int ac, char **av)
|
|||||||
PRINT("%03i", 1);
|
PRINT("%03i", 1);
|
||||||
PRINT("%03u", 1);
|
PRINT("%03u", 1);
|
||||||
PRINT("%03x", 1);
|
PRINT("%03x", 1);
|
||||||
|
PRINT("%05i", -12);
|
||||||
PRINT("%03%");
|
PRINT("%03%");
|
||||||
PRINT("%0%");
|
PRINT("%0%");
|
||||||
}
|
}
|
||||||
@@ -384,6 +404,8 @@ int main(int ac, char **av)
|
|||||||
PRINT("%6%");
|
PRINT("%6%");
|
||||||
PRINT("%16c", 'a');
|
PRINT("%16c", 'a');
|
||||||
PRINT("%16c", (char)97);
|
PRINT("%16c", (char)97);
|
||||||
|
PRINT("%5i", -12);
|
||||||
|
PRINT("%05i", -12);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (ac == 2 || !strcmp(av[2], "precision"))
|
if (ac == 2 || !strcmp(av[2], "precision"))
|
||||||
|
|||||||
@@ -94,6 +94,7 @@ char *ft_precision(char *s, char *print, char *type)
|
|||||||
char *width_flags(char *print, char *s, int width, int zero)
|
char *width_flags(char *print, char *s, int width, int zero)
|
||||||
{
|
{
|
||||||
char *tmp;
|
char *tmp;
|
||||||
|
char *minus;
|
||||||
char c;
|
char c;
|
||||||
int len;
|
int len;
|
||||||
|
|
||||||
@@ -107,9 +108,16 @@ char *width_flags(char *print, char *s, int width, int zero)
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
c = (ft_strchr(s, '0')) ? '0' : ' ';
|
// c = (ft_strchr(s, '0')) ? '0' : ' ';
|
||||||
ft_memset(tmp, c, width - len);
|
// ft_memset(tmp, c, width - len);
|
||||||
|
ft_memset(tmp, (ft_strchr(s, '0')) ? '0' : ' ', width - len);
|
||||||
ft_memmove(ft_strchr(tmp, '\0') + zero, print, ft_strlen(print));
|
ft_memmove(ft_strchr(tmp, '\0') + zero, print, ft_strlen(print));
|
||||||
|
// if (c == '0' && (minus = ft_strchr(tmp, '-')))
|
||||||
|
if (ft_strchr(s, '0') && (minus = ft_strchr(tmp, '-')))
|
||||||
|
{
|
||||||
|
minus[0] = '0';
|
||||||
|
tmp[0] = '-';
|
||||||
|
}
|
||||||
}
|
}
|
||||||
free(print);
|
free(print);
|
||||||
return (tmp);
|
return (tmp);
|
||||||
|
|||||||
Reference in New Issue
Block a user