Пример #1
0
int			conversion_d_up(int *i, va_list params, int nb_char)
{
	long	nb;
	char	*str;

	nb = va_arg(params, long);
	str = ft_itoa_l(nb);
	ft_putstr(str);
	nb_char += ft_strlen(str);
	(*i)++;
	return (nb_char);
}
Пример #2
0
static void		print_addr(t_struct var)
{
	int		i;
	char	*str;

	str = ft_itoa_l(var.addr, 16, 'a');
	i = -1;
	while (++i < 16 - ft_strlen(str))
		write(1, "0", 1);
	ft_printf("%s ", str);
	free(str);
}
Пример #3
0
int			conversion_u(int *i, va_list params, int nb_char)
{
	unsigned int	nb;
	char			*unb;

	nb = va_arg(params, unsigned int);
	unb = ft_itoa_l(nb);
	ft_putstr(unb);
	nb_char += ft_strlen(unb);
	(*i)++;
	return (nb_char);
}
Пример #4
0
Файл: string8.c Проект: rioru/42
static int			align_left(unsigned long l, int w, int p, t_format *f)
{
	char			*str;
	int				ret;

	ret = 0;
	if (!(str = (l == 0 && p == 0) ? ft_strdup("") : ft_itoa_l(l, 16, 'a')))
		return (-1);
	if (p >= 0 && f->flags & 2)
		f->flags ^= 2;
	p = (p < ft_strlen(str)) ? ft_strlen(str) : p;
	ret += ft_putstr("0x");
	if (p > ft_strlen(str))
		ret += filling('0', p - ft_strlen(str));
	ret += ft_putstr(str);
	ret += filling(' ', w - p - 2);
	free(str);
	return (ret);
}