Ejemplo n.º 1
0
int				print_s(t_data *data, va_list arg)
{
	int			i;
	char		*str;

	if (data->len_mod == 8)
		return (print_ls(data, arg));
	str = va_arg(arg, char *);
	if (!str)
	{
		ft_printstr("(null)", data);
		return (1);
	}
	if (data->prec != -1)
		i = data->field - ft_min(ft_strlen(str), data->prec);
	else
		i = data->field - ft_strlen(str);
	if ((data->flag & 4) != 0)
		ft_printstr(str, data);
	while (i-- > 0)
		ft_printchar(' ', data);
	if ((data->flag & 4) == 0)
		ft_printstr(str, data);
	return (1);
}
Ejemplo n.º 2
0
static	int	specifier(va_list ap, char scf)
{
	if (scf == 'c' || scf == 'C')
		return (ft_printchar(ap));
	if (scf == 's' || scf == 'S')
		return (ft_printstr(ap));
	if (scf == 'd' || scf == 'i')
		return (ft_printdec(ap));
	if (scf == 'u' || scf == 'U')
		return (ft_printnbr(ap, scf));
	if (scf == 'x' || scf == 'X' || scf == 'p')
		return (ft_printnbr(ap, scf));
	if (scf == 'o' || scf == 'O')
		return (ft_printnbr(ap, scf));
	else
		return (0);
}
Ejemplo n.º 3
0
int				print_ls(t_data *data, va_list arg)
{
	int			i;
	wchar_t		*str;

	str = va_arg(arg, wchar_t *);
	if (!str)
	{
		ft_printstr("(null)", data);
		return (1);
	}
	i = data->field - sizewstr(str);
	if ((data->flag & 4) != 0)
		ft_printwstr(str, data);
	while (i-- > 0)
		ft_printchar(' ', data);
	if ((data->flag & 4) == 0)
		ft_printwstr(str, data);
	return (1);
}