文件读取操作

如果需要从文件读入数据,并把输出数据保存为文件,需要使用文件读取。

  • freopenfile reopen,意为文件重新打开,实现重定向标准输入输出
  • 第一个参数为文件名可以修改,输入文件为.in,输出文件为.out
  • 第二个参数,r代表读(read),w代表写(write)
  • 第三个参数,stdin标准输入,stdout标准输出
cpp 复制代码
freopen("test.in", "r", stdin);
freopen("test.out", "w", stdout);

main函数开头加上这两行,程序会打开与编译器同目录下的test.in文件,从中读取输入数据,代码部分不需要修改,运行结果会保存到编译器同目录下的test.out文件,没有此命名文件则会自动创建此文件。

文件使用完成之后需要关闭文件。

cpp 复制代码
fclose(stdin);  // 关闭输入文件
fclose(stdout);  // 关闭输出文件

举例:

cpp 复制代码
#include <iostream>

using namespace std;

int main() {
	freopen("test.in", "r", stdin);
	freopen("test.out", "w", stdout);

	int a;
	cin >> a;
	cout << a;

	fclose(stdin); 
	fclose(stdout);
	return 0;
}

文件目录关系默认如下:

相关推荐
fpcc3 分钟前
并行编程实战——CUDA编程的pipelines
c++·cuda
Tairitsu_H14 分钟前
[LC优选算法#5] 分治:快排 | 颜色分类 | 排序数组 | 第K大元素
c++·算法·leetcode·排序算法·快速排序
编程版小新18 分钟前
Day1:体验产品,以画图方式梳理用户操作和管理员操作
学习
Frank学习路上20 分钟前
【C++】面试:STL容器与算法
c++·算法·面试
凡人叶枫21 分钟前
Effective C++ 条款33:避免遮掩继承而来的名字
linux·服务器·开发语言·c++·嵌入式开发
10岁的博客21 分钟前
NOIP2010普及组「接水问题」详解:模拟算法与优先队列解法
开发语言·c++·算法
凡人叶枫21 分钟前
Effective C++ 条款31:将文件间的编译依存关系降至最低
linux·开发语言·c++·php·嵌入式开发·effective c++
liulilittle27 分钟前
整数溢出陷阱:用除法安全比较乘积
c++
dengyuezhe80601 小时前
《C++ 异常机制与智能指针:从原理到实现》
android·java·c++
aerror1 小时前
如何解决brew安装编译不过的问题
c++