Casa Sviluppo Che cos'è scanf? - definizione da techopedia

Che cos'è scanf? - definizione da techopedia

Sommario:

Anonim

Definizione - Cosa significa Scanf?

Nel linguaggio di programmazione C, scanf è una funzione che legge i dati formattati dallo stdin (ovvero, il flusso di input standard, che di solito è la tastiera, a meno che non venga reindirizzato) e quindi scrive i risultati negli argomenti forniti.

Questa funzione appartiene a una famiglia di funzioni che hanno la stessa funzionalità ma si differenziano solo per l'origine dei dati. Ad esempio, fscanf ottiene il suo input da un flusso di file, mentre sscanf ottiene il suo input da una stringa.

Techopedia spiega Scanf

La funzione scanf ha il seguente prototipo / firma:

int scanf (const char * format, …);

dove

  • int (intero) è il tipo restituito
  • Il formato è una stringa che contiene gli identificatori del tipo (vedi sotto)
  • "…" (puntini di sospensione) indica che la funzione accetta un numero variabile di argomenti; ogni argomento deve essere un indirizzo di memoria in cui viene scritto il risultato convertito

Un semplice identificatore di tipo è costituito da un simbolo percentuale (%) e da un carattere alfa che indica il tipo. Di seguito sono riportati alcuni esempi degli identificatori di tipo riconosciuti da scanf:

  • % c - Carattere
  • % d - Numero intero firmato
  • % x - Numero intero senza segno in formato esadecimale
  • % f - Punto mobile
  • % s - String

La funzione funziona leggendo l'input dal flusso di input standard e quindi scansiona il contenuto di "format" per qualsiasi identificatore di formato, cercando di far corrispondere i due. In caso di successo, la funzione scrive il risultato nell'argomento o negli argomenti passati.

Ad esempio, se la chiamata di funzione è

scanf ("% c% d", & var1, & var2);

e l'utente digita "a1", la funzione scriverà "a" in "var1" e "1" in "var2". Se la chiamata di funzione, tuttavia, è

scanf ("% x", & var);

lo stesso input verrà letto come il numero esadecimale "a1", che è 161 in decimale.

La funzione restituisce il seguente valore:

  • > 0 - Il numero di elementi convertiti e assegnati correttamente.
  • 0 - Nessun elemento assegnato.
  • <0 - Errore di lettura rilevato o fine del file (EOF) raggiunto prima di qualsiasi assegnazione.
Che cos'è scanf? - definizione da techopedia