Fungsi freopen () di C ++ mencoba membuka file baru dengan aliran file yang terkait dengan file lain yang dibuka.
Fungsi freopen () didefinisikan dalam file header.
freopen () prototipe
FILE * freopen (nama file const char *, mode const char *, aliran FILE *);
Fungsi freopen pertama kali mencoba menutup file yang dibuka menggunakan aliran. Setelah file ditutup, ia mencoba untuk membuka nama file yang ditentukan oleh nama file argumen (jika bukan null) dalam mode yang ditentukan oleh mode argumen. Akhirnya itu mengaitkan file dengan aliran aliran file.
Jika nama file adalah penunjuk nol, fungsi freopen () mencoba membuka kembali file yang sudah terkait dengan aliran.
freopen () Parameter
- nama file: File baru untuk dibuka.
- mode: Mode untuk membuka file dengan. Berbagai jenis mode akses file adalah sebagai berikut:
Mode Akses File | Penafsiran | Jika file ada | Jika file tidak ada |
---|---|---|---|
"r" | Membuka file dalam mode baca | Baca dari awal | Kesalahan |
"w" | Membuka file dalam mode tulis | Hapus semua isinya | Buat file baru |
"Sebuah" | Membuka file dalam mode append | Mulailah menulis dari akhir | Buat file baru |
"r +" | Membuka file dalam mode baca dan tulis | Baca dari awal | Kesalahan |
"w +" | Membuka file dalam mode baca dan tulis | Hapus semua isinya | Buat file baru |
"a +" | Membuka file dalam mode baca dan tulis | Mulailah menulis dari akhir | Buat file baru |
- aliran: Aliran file untuk mengasosiasikan nama file.
freopen () Nilai kembali
Fungsi freopen () mengembalikan:
- streaming kesuksesan.
- NULL jika gagal.
Contoh: Bagaimana fungsi freopen () bekerja?
#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; )
Saat Anda menjalankan program:
Berikut ini akan ditulis ke test1.txt: Ini ditulis ke test1.txt . Berikut ini akan ditulis ke test2.txt: Ini ditulis ke test2.txt