logo

scanf valodā C

C programmēšanas valodā scanf ir funkcija, kas apzīmē Scan Formatted String. To izmanto, lai nolasītu datus no stdin (standarta ievades plūsma, t.i., parasti tastatūra) un pēc tam ieraksta rezultātu dotajos argumentos.

  • Tas pieņem rakstzīmju, virkņu un ciparu datus no lietotāja, izmantojot standarta ievadi.
  • Scanf izmanto arī formāta specifikācijas, piemēram, printf.

scanf Sintakse

Scanf() sintakse programmā C ir līdzīga printf() sintaksei.



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

Šeit,

    int ir atgriešanas veids. formāts ir virkne, kas satur formāta specifikācijas(-us). … norāda, ka funkcija pieņem mainīgu argumentu skaitu.

Formāta specifikāciju piemēri, ko atpazina scanf:

lasot csv failu java

%d lai pieņemtu veselu skaitļu ievadi.



%ld lai pieņemtu garu veselu skaitļu ievadi

%lld lai pieņemtu garu garu veselu skaitļu ievadi

%f lai pieņemtu reālā skaitļa ievadi.



%c lai pieņemtu rakstzīmju veidu ievadi.

%s lai pieņemtu virknes ievadi.

Lai uzzinātu vairāk par formātu specifikācijām, skatiet šo rakstu - Formāta specifikācijas C

Piemērs:

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

Scanf ierakstīs lietotāja ievadīto vērtību veselā skaitļa mainīgajā bija.

Scanf atgriešanas vērtība

Scanf programmā C atgriež trīs veidu vērtības:

    >0: konvertēto un veiksmīgi piešķirto vērtību skaits. 0: netika piešķirta vērtība. <0: tika konstatēta lasīšanas kļūda vai faila beigas (EOF) ir sasniegtas pirms jebkādas piešķiršanas.

Kāpēc &?

Skenējot ievadi, scanf ir kaut kur jāsaglabā šie ievades dati. Lai saglabātu šos ievades datus, Scanf ir jāzina mainīgā lieluma atmiņas vieta. Un šeit nāk ampersand, lai glābtu.

  • & tiek saukta arī par operatora adresi.
  • Piemēram, &var ir var adrese.

Scanf piemērs

Zemāk ir C programma, lai ieviestu 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;> }>

>

>

atjauninājums no pievienošanās sql

Izvade

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

Saistīts raksts:

  • Skenēti C valodā