Spécificateurs de formats pour printf
(pour plus de précisions faire:  man printf sous unix)

 
 
 Spécificateur   Argument converti en Type puis affichage
%d, %i conversion en int puis affichage entier en notation décimale signée
%u conversion en int puis affichage  entier en notation décimale non signée
%o conversion en int puis affichage entier en notation octale non signée (non précédé d'un 0)
%x, X conversion en int puis affichage entier sous forme héxadécimale non signée (non précédé de 0x ou 0X), en utilisant abcdef pour x et ABCDEF pour X
%c conversion en unsigned char puis affichage caractère correspondant (caractère d'espacement y compris)
%s char*
chaîne de caractères (sans le '\0')
%f
 
double
nombre en virgule flottante en notation décimale de la forme [-]mmm.ddd, où le nombre de d est donné par la précision (6 par défaut). Si la précision vaut 0, le point décimal est supprimé.
%e, %E double
nombre en virgule flottante en notation décimale de la forme [-]mmm.ddde+/-xx ou [-]mmm.dddE+/-xx , où le nombre de d est donné par la précision (6 par défaut). Si la précision vaut 0, le point décimal est supprimé.
%g, %G double
Format %e ou %E si l'exposant est < -4 ou >= la précision,
suivant %f sinon.
Les 0 ou le point décimal à la fin du nombre ne sont pas imprimés.
%p Pour imprimer un pointeur (selon l'implantation)
void*
%n int *
Ecrit dans l'argument, le nombre de caractères écrits jusque là par printf. Ne convertit pas d'arguments
% imprime %

Entre % est le spécificateur de format on peut placer, dans l'ordre :