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:
 
| 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








