<stdio.h>
头文件中。FILE *freopen(const char *filename, const char *mode, FILE *stream);
mode 的取值 | 含 义 |
---|---|
"r" | 以“只读”方式打开文本文件(该文件必须已经存在) |
"w" | 以“写入”的方式打开文本文件 |
"a" | 以追加的方式打开一个文本文件 |
"rb" | 以读取的方式打开一个二进制文件(该文件必须已经存在) |
"wb" | 以写入的方式打开一个二进制文件 |
"ab" | 以追加的方式打开一个二进制文件 |
"r+" | 以读或写的方式打开一个文本文件(该文件必须已经存在) |
"w+" | 以读或写的方式创建一个新的文本文件 |
"a+" | 以读或写的方式打开一个文本文件 |
"rb+" | 以读或写的方式打开一个二进制文件(该文件必须已经存在) |
"wb+" | 以读或写的方式创建一个二进制文件 |
"ab+" | 以读或写的方式打开一个二进制文件 |
#include <stdio.h> int main() { // 重定向stdout到一个文件 if (freopen("output.txt", "w", stdout) == NULL) { perror("Error redirecting stdout"); return 1; } // 正常地使用printf,但输出会写入文件output.txt printf("Hello, World!\n"); // 关闭重定向的stdout fclose(stdout); return 0; }在这个例子中,通过调用 freopen() 将标准输出 stdout 重定向到名为 output.txt 的文件。因此,printf() 函数会将文本写入到 output.txt 文件,而不是屏幕。
本文链接:http://task.lmcjl.com/news/4522.html