Kazalo:
Opredelitev - Kaj pomeni Scanf?
V programskem jeziku C je scanf funkcija, ki bere oblikovane podatke s stdina (tj. Standardni vhodni tok, ki je ponavadi tipkovnica, razen če je preusmerjena) in rezultate zapiše v dane argumente.
Ta funkcija spada v družino funkcij, ki imajo enako funkcionalnost, vendar se razlikujejo le v izvoru podatkov. Na primer, fscanf dobi svoj vnos iz datotečnega toka, medtem ko sscanf dobi vhod iz niza.
Tehopedija razlaga Scanf
Funkcija scanf ima naslednji prototip / podpis:
int scanf (format const char *, …);
kje
- int (celo število) je vrsta vrnitve
- format je niz, ki vsebuje določevalce vrst (glej spodaj)
- "…" (elipsa) pomeni, da funkcija sprejema spremenljivo število argumentov; vsak argument mora biti spominski naslov, kamor je zapisan pretvorjeni rezultat
Preprost specifikator tipa je sestavljen iz odstotka (%) in alfa znaka, ki označuje tip. Spodaj je nekaj primerov specifikatorjev tipa, ki jih prepozna scanf:
- % c - Znak
- % d - celo število podpisanih
- % x - Nepodpisano celo število v šestnajstiški obliki
- % f - Plavajoča točka
- % s - Niz
Funkcija deluje tako, da prebere vnos iz običajnega vhodnega toka in nato pregleda vsebino "format" za poljubne speciatorje formata, pri čemer se poskuša uskladiti z obema. Po uspehu funkcija zapiše rezultat v posredovane argumente.
Na primer, če je klic funkcije
scanf ("% c% d", & var1, & var2);
in uporabnik vpiše "a1", bo funkcija zapisala "a" v "var1" in "1" v "var2". Če pa je klic funkcije, je
scanf ("% x", & var);
isti vhod bo prebran kot šestnajstiška številka "a1", ki je 161 v decimalnih točkah.
Funkcija vrne naslednjo vrednost:
- > 0 - Število elementov, ki so bili uspešno pretvorjeni in dodeljeni.
- 0 - Noben element ni bil dodeljen.
- <0 - Preden je bila dodeljena kakršna koli dodelitev, je bila odkrita napaka ali prebrana napaka ali konec datoteke (EOF).
