char *pad="---------------------------";
int nbPad=strlen(pad) - strlen(msg);
if ( nbPad >= 0 ) printf("%s", pad + nbPad );
évidemment tu peux aussi connaitre la taille de ta chaine pad, ce qui évite un appel à strlen :)
Bon c'est pas l'idéal, ça impose un teste si on veux être robuste, mais ça a le mérite d'être simple. Ensuite tu peux décider que tout tes message feront au minimum 5 caractère, et grappiller sur la taille de la chaine de padding en rajoutant une constante.
Sinon tu as la solution de boucler
while(nbPad-- > 0) printf("-");
Il ne faut pas décorner les boeufs avant d'avoir semé le vent
# solution de la brute
Posté par fearan . En réponse au message Comment répeter un caractère avec printf. Évalué à 1.
int nbPad=strlen(pad) - strlen(msg);
if ( nbPad >= 0 ) printf("%s", pad + nbPad );
évidemment tu peux aussi connaitre la taille de ta chaine pad, ce qui évite un appel à strlen :)
Bon c'est pas l'idéal, ça impose un teste si on veux être robuste, mais ça a le mérite d'être simple. Ensuite tu peux décider que tout tes message feront au minimum 5 caractère, et grappiller sur la taille de la chaine de padding en rajoutant une constante.
Sinon tu as la solution de boucler
while(nbPad-- > 0) printf("-");
Il ne faut pas décorner les boeufs avant d'avoir semé le vent