int ftp_putbase_long(uintmax_t n, uint32_t base, uint8_t flag, t_docker *data) { FT_INIT(int, len, 0); if (base > 0 && base <= 10) { if (base == 8 && n != 0 && data->dieze == 1) ftp_putchar('0'); if (n >= base) len += ftp_putbase_long((n / base), base, flag, data); ft_putchar((n % base) + '0'); len++; } else if (base == 16) { if (n != 0 && data->dieze == 1) len += (ftp_putchar('0') + ftp_putchar(flag + 23)); if (n >= 16) { len += ftp_putbase_long((n / 16), base, flag, data); n %= 16; } ft_putchar((n % 16) >= 10 ? (n % 10) + flag : (n % 16) + '0'); len++; } return (len); }
int ftp_distrib_char(t_docker *data, int32_t str, int len, int who) { int ref; ref = len; if (who == -1) { len += ftp_putchar(str); return (len = ft_add_spaces((data->width - 1), len, data->zero == 1 ? '0' : ' ')); } else if (who == 3) len = ft_add_spaces((data->width - 1), len, data->zero == 1 || data->dot ? '0' : ' '); return (len += ftp_putchar(str)); }
int ftp_purcent(t_docker *data, int32_t str, int len, int who) { char c; c = data->zero ? '0' : ' '; if (who == -1) { len += ftp_putchar(str); return (len = ft_add_spaces((data->width - 1), len, data->zero == 1 ? '0' : ' ')); } else if (who == 3) { if (data->dot == 1) c = '0'; len = ft_add_spaces((data->width - 1), len, c); } return (len += str ? ftp_putchar(str) : 0); }
int ft_putwchar(wchar_t c, int count) { char **final; FT_INIT(char *, bin_value, ft_strnew(33)); FT_INIT(int, i, 0); FT_INIT(int, octet, 0); bin_value = ft_itoa_base((int)c, 2); if (ft_strlen(bin_value) <= 7) return (ftp_putchar((char)c)); else if (ft_strlen(bin_value) <= 11) final = set_mask(bin_value, MASK_2); else if (ft_strlen(bin_value) > 11 && ft_strlen(bin_value) <= 16)