Exemple #1
0
static int	print_spaces(t_a *arg, int len)
{
	int	sp;
	int	prefix_len;

	sp = 0;
	prefix_len = 0;
	arg->flag.di && arg->type == 'o' ? prefix_len = 1 : 0;
	arg->flag.di && (arg->type == 'x' || arg->type == 'X') ? prefix_len = 2 : 0;
	arg->prec.prec = (arg->prec.prec > len ? arg->prec.prec : len);
	arg->type == 'o' && arg->flag.di && arg->prec.pt ?
		arg->prec.prec -= prefix_len : 0;
	arg->width -= arg->prec.prec + prefix_len;
	while (!arg->flag.mn && arg->width > 0 && sp++)
	{
		arg->flag.zr ? write(arg->out, "0", 1) : write(arg->out, " ", 1);
		arg->width--;
	}
	(arg->flag.zr || arg->prec.pt) && arg->flag.di ? sp += prfx(arg) : 0;
	while ((arg->prec.prec - len) > 0)
	{
		write(arg->out, "0", 1);
		arg->prec.prec--;
		sp++;
	}
	!(arg->flag.zr || arg->prec.pt) && arg->flag.di ? sp += prfx(arg) : 0;
	return (sp);
}
Exemple #2
0
// In the main method, we refer to the prototyped function
int main(void) 
{
	// Since prfx is forward referenced, it will call the code below main.
	prfx();
}