22.14.1.freopen |
|
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;
}
|
|