c - Que signifie le spécificateur de format% * s?
This question and all comments follow the
"Attribution Required."
Problèmes similaires
- c - Que signifie "%. * S" dans printf?
- Que signifie% s dans une chaîne au format python?
- c - Quelle est la signification du spécificateur de formatage% m?
- c - Quelle est la signification de "% - *. * S" dans une chaîne de format printf
- c - Que signifie le «s» dans la structure?
- Plus de questions similaires >>
Toutes les réponses
Il est utilisé pour spécifier, de manière dynamique, la largeur du champ:
donc "indent" spécifie l'espace à allouer pour la chaîne qui le suit dans la liste des paramètres.
Alors,
est le même que
C'est une bonne façon de mettre des espaces dans votre fichier, en évitant une boucle.
N'utilisez pas "% * s" sur un tampon qui n'est pas terminé par NULL (compressé) en pensant qu'il n'imprimera que le champ "length".
Le spécificateur de format% 4s génère une chaîne dans une largeur de champ de 4, c'est-à-dire que printf affiche la valeur avec au moins 4 positions de caractères.
Si la valeur à émettre est
less
plus de 4 positions de caractères de large, la valeur estright justified
sur le terrain par défaut.Si la valeur est
greater
plus de 4 positions de caractères de large, la largeur du champexpands
pour accueillir le nombre approprié de caractères.Pour justifier à gauche la valeur, utilisez un entier négatif pour spécifier la largeur du champ.
Références:Java ™ How To Program (premiers objets), dixième édition
* Fait remplir la sortie par fprintf jusqu'à ce qu'elle ait une largeur de n caractères, où n est une valeur entière stockée dans l'argument de fonction a juste avant celui représenté par le type modifié.
http://www.cplusplus.com/reference/clibrary/cstdio/printf/
par exemple:
printf("%*s", 4, myValue);
est équivalent àprintf("%4s", myValue);
.Leave a Reply