Item | Value |
Header file | stdio.h |
Declaration | FILE *freopen(const char *fname, const char *mode, FILE *stream); |
Function | associates an existing stream with a different file. |
Return | returns a pointer to stream on success or a null pointer on failure. |
Legal Values for the mode Parameter
Mode | Meaning |
"r" | Open text file for reading |
"w" | Create a text file for writing |
"a" | Append to text file |
"rb" | Open binary file for reading |
"wb" | Create binary file for writing |
"ab" | Append to a binary file |
"r+" | Open text file for read/write |
"w+" | Create text file for read/write |
"a+" | Open text file for read/write |
"rb+" or "r+b" | Open binary file for read/write |
"wb+" or "w+b" | Create binary file for read/write |
"ab+" or "a+b" | Open binary file for read/write |
You can use freopen() to redirect the system-defined files stdin, stdout, and stderr to some other file.
Use freopen() to redirect the stream stdout to the file called OUT.
#include <stdio.h> #include <stdlib.h> int main(void) { FILE *fp; printf("This will display on the screen.\n"); if((fp=freopen("OUT", "w" ,stdout))==NULL) { printf("Cannot open file.\n"); exit(1); } printf("This will be written to the file OUT."); fclose(fp); return 0; }
22.14.freopen | ||||
22.14.1. | freopen |