Scanf
![Abbozzo](http://upload.wikimedia.org/wikipedia/commons/thumb/0/0e/Puzzle_stub.svg/45px-Puzzle_stub.svg.png)
scanf è una funzione che viene implementata in diversi linguaggi di programmazione.
Ha origine dal linguaggio C dove è inclusa nella libreria stdio.h
ed ha il seguente prototipo:
int scanf(const char *format, ...)
La funzione legge dei caratteri dal canale standard di input (stdin), li converte secondo le specifiche di formattazione fornite dall'argomento format
e memorizza i valori ottenuti negli argomenti seguenti.
Qui di seguito è riportato un esempio in C
#include <stdio.h> /* Libreria standard per l'I/O */ int main() { int n; printf("Inserisci il valore di N: "); scanf("%d", &n); printf("N al quadrato è uguale a %d\n", n*n); return 0; }
Nell'esempio proposto viene richiesto all'utente un numero intero e viene calcolato il quadrato di tale numero. La funzione scanf
ha lo scopo di rilevare quanto immesso dall'utente tramite la tastiera, convertirlo in un numero intero e memorizzarne il risultato nella variabile n
.
La stringa di formattazione deve essere costituita da un carattere '%' seguito da uno degli specificatori elencati:
c Carattere d Numero intero f Numero reale a singola precisione (float) lf Numero reale a doppia precisione (double) s Stringa (array di caratteri e, pertanto, un puntatore che nella scanf non ha bisogno di '&') p Indirizzo di memoria
Voci correlate
- Canali standard
- printf