void ft_put_line_number(int last) { int i; t_ucc *convert; int nb_char; int max; if (gbl_mode(GET, 0) == HEX) max = 7; else max = 8; nb_char = ft_nb_char(0); i = 0; convert = (t_ucc*)"0123456789abcdef"; if (has_printed()) write(1, "\n", 1); if (!ft_nb_char(0) && last) return ; while (i < max) { write(1, convert + ((nb_char / pow_16((max - 1) - i)) % 16), 1); i++; } if (last) write(1, "\n", 1); }
char *ft_itoa(int n) { int rev_n; char *str; rev_n = ft_nb_char(n); str = (char *)malloc(sizeof(char) * rev_n + 1); if (str) { str[rev_n--] = '\0'; if (n < 0) str[0] = '-'; else if (n == 0) str[0] = '0'; while (n != 0) { if (n > 0) str[rev_n--] = ((n % 10) + '0'); else str[rev_n--] = ((-(n % 10)) + '0'); n /= 10; } } return (str); }