C ++ freopen () - C ++ Standard Library

A C ++ freopen () függvénye új fájlt próbál megnyitni egy másik megnyitott fájlhoz társított fájlfolyammal.

A freopen () függvény a fejlécfájlban van meghatározva.

freopen () prototípus

 FILE * freopen (const char * fájlnév, const char * mód, FILE * stream);

A freopen funkció először a stream segítségével próbálja bezárni a megnyitott fájlt. A fájl bezárása után megpróbálja megnyitni az argumentum fájlnév által megadott fájlnevet (ha az nem null) az argumentum mód által megadott módban. Végül társítja a fájlt a fájlfolyam-folyammal.

Ha a fájlnév null mutató, a freopen () függvény megpróbálja újra megnyitni a fájlt, amely már társítva van a folyamhoz.

freopen () Paraméterek

  • fájlnév: Új fájl megnyitása.
  • mód: mód a fájl megnyitásához. A fájlok elérési módjának különféle típusai a következők:
A fájlok működési módjai
Fájlelérési mód Értelmezés Ha létezik fájl Ha a fájl nem létezik
"r" Megnyitja a fájlt olvasási módban Olvassa el az elejétől Hiba
"w" Megnyitja a fájlt írási módban Törölje az összes tartalmat Hozzon létre új fájlt
"a" Megnyitja a fájlt függelék módban Kezdje el írni a végétől Hozzon létre új fájlt
"r +" Megnyitja a fájlt írási és olvasási módban Olvassa el az elejétől Hiba
"w +" Megnyitja a fájlt írási és olvasási módban Törölje az összes tartalmat Hozzon létre új fájlt
"a +" Megnyitja a fájlt írási és olvasási módban Kezdje el írni a végétől Hozzon létre új fájlt
  • adatfolyam: A fájlfolyam, amelyhez fájlnevet társít.

freopen () Visszatérési érték

A freopen () függvény visszatér:

  • patak a sikerről.
  • NULL a kudarcról.

Példa: Hogyan működik a freopen () függvény?

 #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; )

A program futtatásakor:

 Az alábbiakat a test1.txt fájlra írjuk: Ezt a test1.txt fájlra írjuk A következő fájlokat a test2.txt fájlra írjuk: Ezt a test2.txt fájlra írjuk

érdekes cikkek...