Funktionen fscanf () i C ++ används för att läsa data från filströmmen.
fscanf () prototyp
int fscanf (FIL * stream, const char * format, …);
Den fscanf()funktionen läser data från filflödet och lagrar värdena i respektive variabler.
Det definieras i rubrikfilen.
fscanf () Parametrar
stream: En ingångsfilström att läsa data från.format: Pekare till en nollavslutad teckensträng som anger hur ingången ska läsas. Den består av formatspecifikationer som börjar med%.Formatsträngen har följande delar:
Non whitespace charactersutom% som var och en förbrukar ett identiskt tecken från ingångsströmmen. Det kan få funktionen att misslyckas om nästa tecken i strömmen inte jämför lika.Whitespace character: Alla efterföljande blankstegstecken behandlas som enstaka blankstegstecken. Vidare anses ' n', ' t' och '' vara samma.Conversion specification: Den har följande format:- Initialt% -tecken som anger början
 - En valfri * kallad tilldelningsundertryckande karaktär. Om den här karaktären finns, tilldelar fscanf () inte resultatet till något mottagande argument.
 - Ett valfritt positivt heltal som anger maximal fältbredd. Den anger det maximala antalet tecken som fscanf () får konsumera när den konvertering utförs som anges i den aktuella konverteringsspecifikationen.
 - En valfri längdmodifierare som anger storleken på det mottagande argumentet.
 - En konverteringsformatspecifikator. 
Format Specifier Beskrivning % Matchar den bokstavliga% c Matchar en enstaka karaktär eller flera tecken. Om bredd definieras matchar den exakt breddtecken. s Matchar på varandra följande icke-blankstegstecken. Om bredd är definierad matchar den exakt breddtecken eller tills första vita utrymmet hittas. (uppsättning) Matchar en icke tom teckenföljd från den givna uppsättningen tecken. Om är närvarande i början av uppsättningen matchas alla tecken som inte finns i uppsättningen. d Matchar ett decimaltal. i Matchar ett heltal. o Matchar ett osignerat oktalt heltal. X eller x Matchar ett osignerat hexadecimalt heltal. u Matchar ett osignerat decimaltal. A eller a, E eller e, F eller f, G eller g Matchar ett flytande nummer. n Returnerar antalet lästa tecken hittills. sid Matchar en implementeringsdefinierad teckensekvens som definierar en pekare.  
%(*)(width)(length)specifier- …: Andra ytterligare argument för att ta emot data. De förekommer i en sekvens enligt formatspecifikatorn.
 
fscanf () Returvärde
- Om det lyckas 
fscanf()returnerar funktionen antalet mottagande argument som har tilldelats. - Om ett matchningsfel inträffar innan det första mottagande argumentet tilldelades, returnerar noll.
 - Om ingångsfel inträffar innan det första mottagande argumentet tilldelades returneras EOF.
 
Exempel: Hur fscanf () fungerar
 #include int main () ( FILE *fp; char name(50); int age; fp = fopen("example.txt","w"); fprintf(fp, "%s %d", "Tim", 31); fclose(fp); fp = fopen("example.txt","r"); fscanf(fp, "%s %d", name, &age); fclose(fp); printf("Hello %s, You are %d years old", name, age); return 0; )
När du kör programmet blir en möjlig utdata:
Hej Tim, du är 31 år gammal








