V programskem jeziku C je scanf funkcija, ki pomeni Scan Formatted String. Uporablja se za branje podatkov iz stdin (standardni vhodni tok, tj. običajno tipkovnica) in nato zapiše rezultat v dane argumente.
- Sprejema znake, nize in številske podatke od uporabnika s standardnim vnosom.
- scanf uporablja tudi specifikatorje formata, kot je printf.
scanf Sintaksa
Sintaksa scanf() v C je podobna sintaksi printf().
int scanf( const char * format , ... );>
tukaj,
- int je povratni tip. format je niz, ki vsebuje specifikatorje formata. … označuje, da funkcija sprejema spremenljivo število argumentov.
Primeri specifikatorjev formata, ki jih prepozna scanf:
%d da sprejme vnos celih števil.
%ld da sprejme vnos dolgih celih števil
%lld da sprejme vnos dolgih dolgih celih števil
%f da sprejmete vnos realnega števila.
%c za sprejemanje vnosa vrst znakov.
%s da sprejme vnos niza.
Če želite izvedeti več o specifikatorjih oblike, glejte ta članek – Specifikatorji formata v C
primer:
int kje;
scanf(%d, &var);kakšna je velikost mojega monitorjaScanf bo vrednost, ki jo vnese uporabnik, zapisal v celoštevilsko spremenljivko je bil.
Vrnjena vrednost scanf
Scanf v C vrne tri vrste vrednosti:
- >0: Število vrednosti, ki so bile pretvorjene in uspešno dodeljene. 0: Vrednost ni bila dodeljena. <0: Napaka pri branju ali dosežen konec datoteke (EOF), preden je bila izvedena kakršna koli dodelitev.
Zakaj &?
Med pregledovanjem vnosa mora scanf te vhodne podatke nekam shraniti. Za shranjevanje teh vhodnih podatkov mora scanf poznati pomnilniško lokacijo spremenljivke. In tukaj je na pomoč znak &.
- & se imenuje tudi kot naslov operaterja.
- Na primer, &var je naslov var.
Primer scanf
Spodaj je program C za implementacijo scanf:
C
// 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;> }> |
>
kaj je 10 od 60
>
Izhod
Enter first number: 5 Enter second number: 6 A : 5 B : 6>
Sorodni članek:
- Scansets v C