文件读取操作

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

  • 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;
}

文件目录关系默认如下:

相关推荐
hetao173383740 分钟前
2026-04-09~12 hetao1733837 的刷题记录
c++·算法
九英里路41 分钟前
OS学习之路——动静态库制作与原理
linux·学习·操作系统·unix·进程·编译·动静态库
6Hzlia42 分钟前
【Hot 100 刷题计划】 LeetCode 136. 只出现一次的数字 | C++ 哈希表&异或基础解法
c++·算法·leetcode
汉克老师1 小时前
GESP2024年6月认证C++三级( 第二部分判断题(1-10))
c++·数组·位运算·补码·gesp三级·gesp3级
red_redemption1 小时前
自由学习记录(160)
学习
南無忘码至尊1 小时前
Unity学习90天-第2天-认识Unity生命周期函数并用 Update 控制物体移动,FixedUpdate 控制物理
学习·unity·游戏引擎
报错小能手2 小时前
ios开发方向——swift错误处理:do/try/catch、Result、throws
开发语言·学习·ios·swift
LX567772 小时前
传统销售如何系统学习成为AI智能销售顾问?认证指南
人工智能·学习
无限进步_2 小时前
【C++】只出现一次的数字 II:位运算的三种解法深度解析
数据结构·c++·ide·windows·git·算法·leetcode
做cv的小昊2 小时前
【TJU】应用统计学——第五周作业(3.1 假设检验的基本思想、3.2 单个正态总体参数的假设检验)
学习·线性代数·机器学习·数学建模·矩阵·概率论·tju