c - Che cosa significa lo specificatore di formato% * s?
This question and all comments follow the
"Attribution Required."
Problemi simili
- c - Che cosa significa "%. * S" in printf?
- Cosa significa% s in una stringa in formato Python?
- c - Qual è il significato dell'identificatore di formattazione% m?
- c - Qual è il significato di "% - *. * S" in una stringa di formato printf
- c - Cosa significa la "s" nella struttura?
- Domande più simili >>
Tutte le risposte
Serve per specificare, in modo dinamico, qual è la larghezza del campo:
quindi "indent" specifica quanto spazio allocare per la stringa che la segue nell'elenco dei parametri.
Così,
equivale a
È un bel modo per inserire degli spazi nel file, evitando un ciclo.
Non usare "% * s" su un buffer che non è terminato con NULL (impacchettato) pensando che stamperà solo il campo "length".
L'identificatore di formato% 4s restituisce una stringa in una larghezza di campo di 4, ovvero printf visualizza il valore con almeno 4 posizioni di carattere.
Se il valore da emettere è
less
più di 4 posizioni di carattere, il valore èright justified
nel campo per impostazione predefinita.Se il valore è
greater
più di 4 posizioni di caratteri larghe, la larghezza del campoexpands
per contenere il numero appropriato di caratteri.Per giustificare il valore a sinistra, utilizzare un numero intero negativo per specificare la larghezza del campo.
Riferimenti:Java ™ How To Program (Early Objects), decima edizione
* Fa in modo che fprintf riempia l'output finché non è largo n caratteri, dove n è un valore intero memorizzato nell'argomento della funzione a appena precedente quello rappresentato dal tipo modificato.
http://www.cplusplus.com/reference/clibrary/cstdio/printf/
per esempio:
printf("%*s", 4, myValue);
è equivalente aprintf("%4s", myValue);
.Leave a Reply