Funzione printf di Perl
Descrizione
Questa funzione stampa il valore di LIST interpretato tramite il formato specificato da FORMAT nel filehandle di output corrente, o in quello specificato da FILEHANDLE.
Efficacemente equivalente a print FILEHANDLE sprintf (FORMAT, LIST)
È possibile utilizzare print al posto di printf se non si richiede un formato di output specifico. Di seguito è riportato l'elenco delle conversioni di formattazione accettate.
Sr.No. | Formato e risultato |
---|---|
1 | %% Un segno di percentuale |
2 | %c Un carattere con il codice ASCII fornito |
3 | %s Una stringa |
4 | %d Un numero intero con segno (decimale) |
5 | %u Un numero intero senza segno (decimale) |
6 | %o Un numero intero senza segno (ottale) |
7 | %x Un numero intero senza segno (esadecimale) |
8 | %X Un numero intero senza segno (esadecimale che utilizza caratteri maiuscoli) |
9 | %e Un numero in virgola mobile (notazione scientifica) |
10 | %E Un numero in virgola mobile, usa E invece di e |
11 | %f Un numero in virgola mobile (notazione decimale fissa) |
12 | %g Un numero in virgola mobile (notazione% e o% f in base alla dimensione del valore) |
13 | %G Un numero in virgola mobile (come% g, ma utilizzando .E. Al posto di .e. Quando appropriato) |
14 | %p Un puntatore (stampa l'indirizzo di memoria del valore in esadecimale) |
15 | %n Memorizza il numero di caratteri emessi fino a quel momento nella variabile successiva nell'elenco dei parametri |
Perl supporta anche flag che facoltativamente regolano il formato di output. Questi sono specificati tra la% e la lettera di conversione. Sono mostrati nella tabella seguente:
Sr.No. | Flag e risultato |
---|---|
1 | space Prefisso il numero positivo con uno spazio |
2 | + Prefisso il numero positivo con un segno più |
3 | - Giustifica a sinistra all'interno del campo |
4 | 0 Usa zeri, non spazi, per giustificare a destra |
5 | # Prefisso ottale diverso da zero con .0. ed esadecimale con .0x. |
6 | number Larghezza minima del campo |
7 | .number Specificare la precisione (numero di cifre dopo il punto decimale) per i numeri in virgola mobile |
8 | l Interpreta il numero intero come .long di tipo C. o .unsigned long. |
9 | h Interpreta il numero intero come .short di tipo C. o .non firmato breve. |
10 | V Interpreta integer come tipo intero standard di Perl.s |
11 | v Interpreta la stringa come una serie di numeri interi e l'output come numeri separati da punti o da una stringa arbitraria estratta dall'argomento quando il flag è preceduto da *. |
Sintassi
Di seguito è riportata la semplice sintassi per questa funzione:
printf FILEHANDLE FORMAT, LIST
printf FORMAT, LIST
Valore di ritorno
Questa funzione
Esempio
Di seguito è riportato il codice di esempio che mostra il suo utilizzo di base:
#!/usr/bin/perl -w
printf "%d\n", 3.1415126;
printf "The cost is \$%6.2f\n",499;
printf "Perl's version is v%vd\n",%^V;
printf "%04d\n", 20;
Quando viene eseguito il codice sopra, produce il seguente risultato:
3
The cost is $499.00
Perl's version is v
0020