C ++ freopen () - C ++ standardbibliotek

Freopen () -funksjonen i C ++ prøver å åpne en ny fil med en filstrøm som er tilknyttet en annen åpnet fil.

Freopen () -funksjonen er definert i topptekstfilen.

freopen () prototype

 FIL * freopen (const char * filnavn, con char char * modus, FILE * stream);

Freopen-funksjonen prøver først å lukke filen som åpnes ved hjelp av stream. Etter at filen er lukket, prøver den å åpne filnavnet som er angitt av argumentets filnavn (hvis det ikke er null) i modusen som er angitt av argumentmodusen. Til slutt knytter den filen til filstrømmen.

Hvis filnavnet er en nullpeker, prøver freopen () -funksjonen å åpne filen som allerede er tilknyttet stream.

freopen () Parametere

  • filnavn: Ny fil som skal åpnes.
  • modus: Mode å åpne filen med. Ulike typer filtilgangsmodus er som følger:
Ulike moduser for filoperasjon
Filtilgangsmodus Tolkning Hvis filen eksisterer Hvis filen ikke eksisterer
"r" Åpner filen i lesemodus Les fra start Feil
"w" Åpner filen i skrivemodus Slett alt innholdet Opprett ny fil
"en" Åpner filen i tilleggsmodus Begynn å skrive fra slutten Opprett ny fil
"r +" Åpner filen i lese- og skrivemodus Les fra start Feil
"w +" Åpner filen i lese- og skrivemodus Slett alt innholdet Opprett ny fil
"a +" Åpner filen i lese- og skrivemodus Begynn å skrive fra slutten Opprett ny fil
  • stream: Filstrømmen filnavnet skal knyttes til.

freopen () Returverdi

Funksjonen freopen () returnerer:

  • strøm på suksess.
  • NULL på feil.

Eksempel: Hvordan fungerer freopen () -funksjonen?

 #include #include int main() ( FILE* fp = fopen("test1.txt","w"); fprintf(fp,"%s","This is written to test1.txt"); if (freopen("test2.txt","w",fp)) fprintf(fp,"%s","This is written to test2.txt"); else ( printf("freopen failed"); exit(1); ) fclose(fp); return 0; )

Når du kjører programmet:

 Følgende blir skrevet til test1.txt: Dette skrives til test1.txt Følgende blir skrevet til test2.txt: Dette skrives til test2.txt

Interessante artikler...