C++的文档操作心得

先提出一个问题:
假如我们玩贪吃蛇,玩到最后游戏结束时,显示出游戏的最高纪录,那我们想想:当我们关闭游戏进程时,这个游戏最高纪录是如何保存下来的呢?
在这里插入图片描述

由此引出文件操作

1.将maxscore数据保存至文档中;
2.查询最高分数时,再将文档中的分数传递给maxscore;

1.建立“data.txt”文档,写入数字0(默认maxscore = 0)
在这里插入图片描述

2.ifstream (将文档中的数据传递给maxscore中)

ifstream fin; //自定义类名称 fin (file in)方便理解
	fin.open("data.txt");
	fin >> maxscore;
	fin.close();

此时 maxscore的值 变为 0;

3.比较当前得分score和最高得分maxscore,取最大;

maxscore = max( maxscore, score);

4.ofstream (将maxscore数据输入到文档中)

ofstream fout;//自定义类名称 fout (file out)方便理解
	fout.open("data.txt");
	fout << maxscore;
    fout.close();

此时 打开文档可以发现文档中的0 已经被替换为 score的值了。

5.完成
如果再一次执行贪吃蛇.exe时,重新开始第一步时 maxscore从文档中读取到数据的就是上一次游戏的最高分数了。

#include <fstream>

using namespace std;

int main()
{
	int score, maxscore; //score,maxscore或者由其他地方声明
	cin >> score; //score或者由别的方式得到
	ifstream fin;
    	fin.open("score.txt");
    	fin >> maxscore;
    	fin.close();
    	
   	 maxscore = max( maxscore, SCORE);
    
	ofstream fout;
		fout.open("score.txt");
		fout << maxscore;
		fout.close();
	return 0;

总结:

ofstream 配合着 <<
=> 将数据 传出至指定文档(文档必须存在)
ifstream 配合着 >>
=>将文档中的数据 输入 数据中

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

衣谷金锋

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值