logo

scanf in C

Nel linguaggio di programmazione C, scanf è una funzione che sta per Scan Formatted String. Viene utilizzato per leggere i dati da stdin (flusso di input standard, ovvero solitamente tastiera) e quindi scrive il risultato negli argomenti specificati.

  • Accetta caratteri, stringhe e dati numerici dall'utente utilizzando l'input standard.
  • scanf utilizza anche identificatori di formato come printf.

scanf Sintassi

La sintassi di scanf() in C è simile alla sintassi di printf().



sanjay dutt e
int scanf(  const char * format , ... );>

Qui,

    int è il tipo restituito. format è una stringa che contiene gli specificatori di formato. … indica che la funzione accetta un numero variabile di argomenti.

Esempio di identificatori di formato riconosciuti da scanf:

%D per accettare l'input di numeri interi.



%ld per accettare l'input di numeri interi lunghi

%lld per accettare l'input di interi long long

%F per accettare l'immissione di un numero reale.



%C per accettare l'input di tipi di carattere.

%S per accettare l'input di una stringa.

Per saperne di più sugli identificatori di formato, fare riferimento a questo articolo – Identificatori di formato in C

Esempio:

int dove;
scanf(%d, &var);

Lo scanf scriverà il valore immesso dall'utente nella variabile intera era.

partecipazione all'aggiornamento mysql

Valore restituito da scanf

Lo scanf in C restituisce tre tipi di valori:

    >0: numero di valori convertiti e assegnati correttamente. 0: non è stato assegnato alcun valore. <0: rilevato errore di lettura o raggiunta la fine del file (EOF) prima che venisse effettuata qualsiasi assegnazione.

Perché &?

Durante la scansione dell'input, scanf deve memorizzare i dati di input da qualche parte. Per memorizzare questi dati di input, scanf deve conoscere la posizione di memoria di una variabile. Ed ecco che arriva la e commerciale in soccorso.

  • & viene anche chiamato indirizzo dell'operatore.
  • Ad esempio, &var è l'indirizzo di var.

Esempio di scanf

Di seguito è riportato il programma C per implementare scanf:

C

attraversamento postordine di un albero binario




// C program to implement> // scanf> #include> // Driver code> int> main()> {> >int> a, b;> > >printf>(>'Enter first number: '>);> >scanf>(>'%d'>, &a);> > >printf>(>'Enter second number: '>);> >scanf>(>'%d'>, &b);> > >printf>(>'A : %d B : %d'> ,> >a , b);> > >return> 0;> }>

come ottenere emoji Apple su Android

>

>

Produzione

Enter first number: 5 Enter second number: 6 A : 5 B : 6>

Articolo correlato:

  • Scanset in C