I programmeringssproget C er scanf en funktion, der står for Scan Formatted String. Det bruges til at læse data fra stdin (standard input-stream, dvs. normalt tastatur) og skriver derefter resultatet ind i de givne argumenter.
alfabet i tal
- Den accepterer tegn, streng og numeriske data fra brugeren ved hjælp af standardinput.
- scanf bruger også formatspecifikationer som printf.
scanf syntaks
Syntaksen for scanf() i C svarer til syntaksen for printf().
int scanf( const char * format , ... );>
Her,
- int er returtypen. format er en streng, der indeholder formatspecifikationerne. … angiver, at funktionen accepterer et variabelt antal argumenter.
Eksempel på formatspecifikationer genkendt af scanf:
%d at acceptere input af heltal.
%ld at acceptere input af lange heltal
%lld at acceptere input af lange lange heltal
%f at acceptere input af reelt tal.
%c for at acceptere input af tegntyper.
%s for at acceptere input af en streng.
For at vide mere om formatspecifikationer, se denne artikel – Formatspecifikationer i C
karakter.sammenlign java
Eksempel:
int hvor;
scanf(%d, &var);Scanf'en vil skrive værdien, som brugeren har indtastet, i heltalsvariablen var.
Returværdi af scanf
Scanf i C returnerer tre typer værdier:
ubuntu build væsentlige
- >0: Antallet af værdier, der er konverteret og tildelt. 0: Ingen værdi blev tildelt. <0: Der er opstået læsefejl eller end-of-file (EOF) nået, før nogen tildeling blev foretaget.
Hvorfor &?
Mens der scannes input, skal scanf gemme inputdata et eller andet sted. For at gemme disse inputdata skal scanf kende hukommelsesplaceringen af en variabel. Og her kommer et-tegnet for at redde.
- & kaldes også som adresse på operatøren.
- For eksempel er &var adressen på var.
Eksempel på scanf
Nedenfor er C-programmet til at implementere 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;> }> |
>
>
Produktion
c++ int til streng
Enter first number: 5 Enter second number: 6 A : 5 B : 6>
Relateret artikel:
- Scansets i C