Printf

printf è una funzione implementata nei linguaggi di programmazione per visualizzare sullo standard output una stringa costruita in base ad un formato specificato. Tale funzione ha origine dal linguaggio C, dove ha un prototipo simile al seguente:

int printf(const char *format, ...)

Il parametro format è una stringa che descrive il formato da seguire nell'output e che utilizza delle sequenze segnaposto, introdotte dal simbolo percentuale ("%"), per specificare la posizione relativa e il tipo dei dati con cui comporre la stringa.

Per esempio, nel linguaggio C

printf("Colore %s, numero1 %d, numero2 %05d, hex %x, float %5.2f.\n",
             "rosso", 123456, 89, 255, 3.14);

stamperà la seguente linea (escluso il carattere di nuova linea, \n):

Colore rosso, numero1 123456, numero2 00089, hex ff, float 3.14.

La funzione printf restituisce il numero di caratteri stampati, o un numero negativo se si è verificato un errore di output.

Anche il Perl ha la funzione printf ma per la conversione usa caratteri differenti. Python ha una funzionalità analoga (l'operatore %). La libreria GLib contiene la funzione g_print, un'implementazione di printf.

I sistemi POSIX dispongono di un programma denominato printf[1], utilizzabile ad esempio negli script di shell; può essere impiegato in sostituzione del comando echo in situazioni in cui quest'ultimo non sia portabile.

Per esempio:

echo -n -e "$FOO\t$BAR'

può essere riscritto in modo portabile come:

printf '%s\t%s' "$FOO" "$BAR"

Anche il linguaggio PHP dispone della funzione printf, uguale a quella del C/C++.
Nel programma MATLAB non è presente printf, ma sono disponibili due sue estensioni: sprintf e fprintf, che accettano la stessa sintassi nella stringa di formato.

Il linguaggio JavaScript, nonostante sia un linguaggio di programmazione di tipologia curly bracket, non dispone di una funzione printf.

  1. ^ (EN) printf, in The Open Group Base Specifications Issue 7 IEEE Std 1003.1-2008. URL consultato il 30 marzo 2010.

From Wikipedia, the free encyclopedia · View on Wikipedia

Developed by Tubidy