创建data文件_剑指信奥 | C++ 之文件操作
趣乐博思剑指信奥 C++ 系列
❝
趣乐博思剑指信奥系列,专门针对全国青少年信息学奥林匹克联赛 NOIP 而开展的专业教育方案。开设的课程有 C 语言基础,C++ 语言基础,算法设计入门与进阶,经典试题分析与详解等系列课程。面向10 - 16 岁少儿的编程教育,培养扎实的 C++ 语言基础,灵活运用算法的能力,分析解决问题的能力。
❞
剑指信奥 | C++ 之文件操作
持久的数据
我们都知道,程序运行在计算机的内存中,一旦运行结束或机器关闭,所有的数据都会消失。
为了能够长时间的保持数据,我们需要把数据保存在内存外的其他地方,通常是放置于外存储设备上,一般以各种格式的文件来存放。
我们之前讲过 C 语言操作文件的方法:
剑指信奥 | C 语言之玩转文件
因为 C 是 C++ 的子集,这些方法在 C++ 语言中仍然适用。
但 C++ 也有自己处理文件的方式,今天,我们就来学习 C++ 语言操作文件的方法。
C++ 文件库
在 C++ 中,fstream
标准库包含着文件操作的方法,在其中包含着三种处理数据类型:
ofstream
创建并写入文件,可用fstream
替代ifstream
指定并读取文件,可用fstream
替代fstream
是ofstream
和ifstream
的结合
如果我们需要创建文件,读写文件的多种操作,需要引入 iostream
和 fstream
即可。
下面,我们使用精简的代码演示 C++ 的文件操作。
创建并写文件
先看代码示例:
#include #include
using namespace std;
int main() {
// 创建 data.outofstream data("data.out");
// 写入数据 1 2 3 data << "1 2 3";
// 关闭文件 data.close();
return 0;}
/* data.out: 1 2 3 */
总结:
- 使用
ofstram
创建文件 - 使用
<<
向文件写入数据 - 要关闭文件,释放内存空间
读文件
我们先来看读文件的示例:
#include #include
using namespace std;
int main() {
// 读取文件 data.inifstream data("data.in");
// 循环读取每一行string line;while (getline(data, line)) {cout << line << endl; }
// 关闭文件 data.close();
return 0;}
/* data.in: 1 2 3 4 5 6 output: 1 2 3 4 5 6 */
总结:
- 使用
ifstream
定义要读的文件 - 使用
while
循环读取每一行数据 - 最后,也要关闭文件,释放内存空间
「 剑指信奥 C++ 系列 」
从零开始,进阶信息学奥林匹克竞赛
清华计算机系哥哥专业讲解
趣乐博思教育
遇见你更优秀的孩子
r
如果您喜欢 趣乐博思教育,请关注我们的公众号,发现您更优秀的孩子!
如果您从这篇文章有所收获,请点亮下方 在看,或转发到朋友圈,谢谢!
创建data文件_剑指信奥 | C++ 之文件操作相关推荐
- c语言 read 文件字节没超过数组大小时会怎样_剑指信奥 | C 语言之信奥试题详解(四)...
趣乐博思剑指信奥系列 ❝ 趣乐博思剑指信奥系列,专门针对全国青少年信息学奥林匹克联赛 NOIP 而开展的专业教育方案.开设的课程有 C 语言基础,C++ 语言基础,算法设计入门与进阶,经典试题分析与详 ...
- c语言一维数组逆序输出_剑指信奥 | C 语言之兵人来袭!
趣乐博思剑指信奥系列 ❝ 趣乐博思剑指信奥系列,专门针对全国青少年信息学奥林匹克联赛 NOIP 而开展的专业教育方案.开设的课程有 C 语言基础,C++ 语言基础,算法设计入门与进阶,经典试题分析与详 ...
- stl clocklist 查找元素_剑指信奥 C++ 之 STL 迭代器(上)
趣乐博思剑指信奥 C++ 系列 ❝ 趣乐博思剑指信奥系列,专门针对全国青少年信息学奥林匹克联赛 NOIP 而开展的专业教育方案.开设的课程有 C 语言基础,C++ 语言基础,算法设计入门与进阶,经典试 ...
- 字符串全排列算法_C#版_剑指OFFER
字符串全排列算法_C#版_剑指OFFER 题目描述 题目描述 输入一个长度为 n 字符串,打印出该字符串中字符的所有排列,你可以以任意顺序返回这个字符串数组. 例如输入字符串ABC,则输出由字符A, ...
- 牛客网_剑指Offer_Python实现_更新中
剑指Offer编程题汇总 第1题_二维数组中的查找 第2题_替换空格 第3题_从尾到头打印链表 第4题_重建二叉树 第5题_用两个栈实现队列 第6题_旋转数组的最小数字 第7题_斐波那契数列 第8题_ ...
- 一个数三位立方和相加等于本身_【题解信奥】打印水仙花数(粉丝求助)
前言 本题来源于粉丝的求助. 关于粉丝求助的问题,我们会按照先后顺序来解答,并从公众号后台回复答案和解析. 打印水仙花数时间限制: 1000 ms 内存限制: 65536 KB [题目描述] 打 ...
- 剑指offer最新版_剑指Offer——Java版本(持续更新)
0 前言 邻近校招,算法要命!!! 本文为研究剑指Offer过程中的笔记,整理出主要思路以及Java版本题解,以便记忆和复习. 参考整理来自<剑指Offer 第二版>. 特别注意,对每道题 ...
- 用循环实现斐波那契数列_剑指 Offer 10- I. 斐波那契数列
剑指 Offer 10- I. 斐波那契数列 写一个函数,输入 n ,求斐波那契(Fibonacci)数列的第 n 项.斐波那契数列的定义如下: F(0) = 0, F(1) = 1 F(N) = F ...
- python中myf什么意思_剑指Offer-Python题解(三)
剑指Offer-Python题解(三) 45 扑克牌顺子 题目描述 LL今天心情特别好,因为他去买了一副扑克牌,发现里面居然有2个大王,2个小王(一副牌原本是54张^_^)...他随机从中抽出了5张牌 ...
- leetcode 打印_剑指 Offer 32 - III 从上到下打印二叉树 III - leetcode 剑指offer
题目难度: 中等 原题链接 今天继续更新剑指 offer 系列, 这道题相比昨天那道题多了个每层打印方向不同的需求, 聪明的你想到应该如何实现了吗? 老样子晚上 6 点 45 分准时更新公众号 每日精 ...
最新文章
- 将三维点云投影到XOZ面上
- Git中忽略文件权限或文件拥有者的改变
- c#/.net 循序渐进理解-委托
- 小学用计算机画画 说课,小学教师说课稿:《画画美丽的自然景色》
- 计算机视觉 模型、学习和推理 Computer vision:models,learning and inference(免费下载)
- 转帖-Linux学习(Find命令使用实例)
- 详解centos7 YCM YouCompleteMe自动补全安装,亲测成功
- linux如何手动释放内存吗,Linux如何手动清理内存中cache信息
- 20151209小问题
- CorePlot-饼状体
- PostgreSQL的 initdb 源代码分析之十六
- 配置nginx作为下载站点
- 查看路由器内宽带账号密码(D-link,TP-Link)
- IBM称欧亚受Conficker病毒感染最严重
- ubuntu安装vmwaretools
- Linux本地信息收集
- python3的print()函数的用法图文讲解
- activex html 崩溃_网站导致浏览器崩溃的原因总结(多款浏览器)
- 如何利用Python动态模拟太阳系运转
- layui设置textarea高度