L'identificatore di formato è una stringa utilizzata nelle funzioni di input e output formattate. La stringa di formato determina il formato dell'input e dell'output. La stringa di formato inizia sempre con un carattere '%'.
Gli identificatori di formato comunemente utilizzati nella funzione printf() sono:
Identificatore del formato | Descrizione |
---|---|
%d o %i | Viene utilizzato per stampare il valore intero con segno dove intero con segno significa che la variabile può contenere valori sia positivi che negativi. |
%In | Viene utilizzato per stampare il valore intero senza segno dove l'intero senza segno significa che la variabile può contenere solo valori positivi. |
%O | Viene utilizzato per stampare l'intero ottale senza segno dove il valore intero ottale inizia sempre con un valore 0. |
%X | Viene utilizzato per stampare l'intero esadecimale senza segno dove il valore intero esadecimale inizia sempre con un valore 0x. In questo, i caratteri alfabetici sono stampati in lettere minuscole come a, b, c, ecc. |
%X | Viene utilizzato per stampare l'intero esadecimale senza segno, ma %X stampa i caratteri alfabetici in maiuscolo come A, B, C, ecc. |
%F | Viene utilizzato per stampare i valori decimali in virgola mobile. Per impostazione predefinita, stampa i 6 valori dopo '.'. |
%e/%E | Viene utilizzato per la notazione scientifica. È anche conosciuto come Mantissa o Esponente. |
%G | Viene utilizzato per stampare i valori decimali a virgola mobile e utilizza la precisione fissa, ovvero il valore dopo il decimale in input sarebbe esattamente uguale al valore nell'output. |
%P | Viene utilizzato per stampare l'indirizzo in formato esadecimale. |
%C | Viene utilizzato per stampare il carattere senza segno. |
%S | Viene utilizzato per stampare le stringhe. |
%ld | Viene utilizzato per stampare il valore intero con segno lungo. |
Comprendiamo gli specificatori di formato in dettaglio attraverso un esempio.
int main() { int b=6; int c=8; printf('Value of b is:%d', b); printf(' Value of c is:%d',c); return 0; }
Nel codice sopra, stiamo stampando il valore intero di b e c utilizzando l'identificatore %d.
Produzione
int main() { int b=10; int c= -10; printf('Value of b is:%u', b); printf(' Value of c is:%u',c); return 0; }
Nel programma sopra, stiamo visualizzando il valore di b e c utilizzando un identificatore di formato senza segno, ovvero %u. Il valore di b è positivo, quindi l'identificatore %u stampa il valore esatto di b, ma non stampa il valore di c poiché c contiene il valore negativo.
Produzione
int main() { int a=0100; printf('Octal value of a is: %o', a); printf(' Integer value of a is: %d',a); return 0; }
Nel codice sopra, stiamo visualizzando il valore ottale e il valore intero di a.
sottolineare nel ribasso
Produzione
int main() { int y=0xA; printf('Hexadecimal value of y is: %x', y); printf(' Hexadecimal value of y is: %X',y); printf(' Integer value of y is: %d',y); return 0; }
Nel codice precedente, y contiene il valore esadecimale 'A'. Visualizziamo il valore esadecimale di y in due formati. Usiamo %x e %X per stampare il valore esadecimale dove %x visualizza il valore in lettere minuscole, ovvero 'a' e %X visualizza il valore in lettera maiuscola, ovvero 'A'.
Produzione
int main() { float y=3.4; printf('Floating point value of y is: %f', y); return 0; }
Il codice precedente stampa il valore mobile di y.
Produzione
int main() { float y=3; printf('Exponential value of y is: %e', y); return 0; }
Produzione
int main() { float y=3; printf('Exponential value of y is: %E', y); return 0; }
Produzione
int main() { float y=3.8; printf('Float value of y is: %g', y); return 0; }
Nel codice sopra, stiamo visualizzando il valore mobile di y utilizzando l'identificatore %g. L'identificatore %g visualizza l'output come l'input con la stessa precisione.
Programma per i numeri primi in Java
Produzione
int main() { int y=5; printf('Address value of y in hexadecimal form is: %p', &y); return 0; }
Produzione
int main() { char a='c'; printf('Value of a is: %c', a); return 0; }
Produzione
int main() { printf('%s', 'javaTpoint'); return 0; }
Produzione
Identificatore della larghezza minima del campo
Supponiamo di voler visualizzare un output che occupi un numero minimo di spazi sullo schermo. Puoi ottenere ciò visualizzando un numero intero dopo il segno di percentuale dell'identificatore di formato.
int main() { int x=900; printf('%8d', x); printf(' %-8d',x); return 0; }
Nel programma precedente, l'identificatore %8d visualizza il valore dopo 8 spazi mentre l'identificatore %-8d creerà un valore allineato a sinistra.
Produzione
albero binario vs bst
Adesso vedremo come riempire gli spazi vuoti. È mostrato nel codice seguente:
int main() { int x=12; printf('%08d', x); return 0; }
Nel programma precedente, %08d significa che lo spazio vuoto è riempito con zeri.
Produzione
Specifica della precisione
Possiamo specificare la precisione utilizzando '.' Operatore (punto) seguito dal numero intero e dall'identificatore di formato.
int main() { float x=12.2; printf('%.2f', x); return 0; }
Produzione