溫馨提示×

c++ freopen函數(shù)怎么使用

c++
小億
323
2023-09-21 00:52:31
欄目: 編程語言

C++中的freopen函數(shù)用于將標(biāo)準(zhǔn)輸入/輸出重定向到指定的文件。

使用freopen函數(shù)的一般語法如下:

FILE *freopen(const char *filename, const char *mode, FILE *stream);

其中,filename是要重定向到的文件名,mode是打開文件的模式,stream是要重定向的流對象。

例如,要將標(biāo)準(zhǔn)輸入重定向到一個名為input.txt的文件中,可以使用以下代碼:

#include <cstdio>
int main() {
// 將標(biāo)準(zhǔn)輸入重定向到input.txt文件
freopen("input.txt", "r", stdin);
// 讀取文件中的內(nèi)容
int num;
while (scanf("%d", &num) != EOF) {
printf("讀取到的數(shù)字:%d\n", num);
}
return 0;
}

同樣地,要將標(biāo)準(zhǔn)輸出重定向到一個名為output.txt的文件中,可以使用以下代碼:

#include <cstdio>
int main() {
// 將標(biāo)準(zhǔn)輸出重定向到output.txt文件
freopen("output.txt", "w", stdout);
// 輸出內(nèi)容到文件
printf("Hello, World!\n");
return 0;
}

需要注意的是,在使用freopen函數(shù)之后,應(yīng)該避免再次使用cincout等標(biāo)準(zhǔn)輸入/輸出流對象,而應(yīng)該使用scanfprintf等函數(shù)來進(jìn)行輸入輸出操作。

0