%s désigne une variable de type chaine de caractère.
Le printf prend en 1° paramètre une chaine formattée contenant une série de combinaisons %<type>, et en 2° paramètre une liste de données.
A chaque fois que le parser rencontre une séquence %<type>, il fait un shift sur la liste et affiche la variable en lui attribuant le type donné...
Enfin, ce n'est pas une vieille manière, c'est très propre comme manière de coder, ca évite d'avoir des chaines avec le nom des variables en dur dans la chaine, du genre:
printf ("$ID\t$symbol\t$name\n");
qui est équivalent, mais beaucoup moins propre...
Pour la liste complète des types et le descriptif:
aide de sprintf (printf est l'équivalent de print(sprintf(<arguments>)) )
Partager