文件读取操作

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

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

文件目录关系默认如下:

相关推荐
库玛西1 小时前
现代 C++ 智能指针全景指南:从 RAII 思想到工业级实践
c语言·开发语言·c++·笔记·面试
liulilittle1 小时前
无锁并发容器的设计与实现原理
开发语言·c++·set·map·并发·无锁·lock-free
还不秃顶的计科生2 小时前
具身智能论文学习8:Octo: An Open-Source Generalist Robot Policy
人工智能·深度学习·学习·机器学习·语言模型·vla·vlm
woshihuanglaoshi2 小时前
事务加持防超卖:ArkTS 在鸿蒙里玩转 TRANSACTION 出入库
学习·华为·harmonyos
qeen872 小时前
【数据结构】自平衡二叉搜索树各种旋转算法原理解析及AVL树的C++实现
数据结构·c++·算法
世人万千丶2 小时前
去重插入与超限淘汰:ArkTS 实现鸿蒙搜索历史的 LIMIT 艺术
运维·服务器·学习·华为·harmonyos·鸿蒙
Augustzero2 小时前
为什么线程不能说睡就睡?看懂等待与唤醒机制
c++·后端
程序员与背包客_CoderZ2 小时前
Linux D-Bus通信协议详解:从入门到C/C++编码实战
linux·服务器·c语言·c++·嵌入式硬件·嵌入式软件·dbus
冻柠檬飞冰走茶3 小时前
PTA基础编程题目集 7-35有理数均值(C++语言实现)
开发语言·数据结构·c++·算法·均值算法
wangchen_03 小时前
C++正则表达式
开发语言·c++·正则表达式