社区
C++ 语言
帖子详情
关于c++输入输出和缓冲
wuboy2000
2004-05-06 04:13:13
我刚接触c++,看到有书上说c++定义的I/O是缓冲的,我不太理解是什么意思。
比如说“endl”和“\n”的区别,endl清空缓冲区而\n不清空,这指什么意思?能不能说具体点,具体体现在什么地方不一样?
还有cerr和clog都是对应标准错误流的,只不过一个非缓冲,一个缓冲。我就是不明白这里是否非缓冲体现在什么地方。
...全文
94
3
打赏
收藏
关于c++输入输出和缓冲
我刚接触c++,看到有书上说c++定义的I/O是缓冲的,我不太理解是什么意思。 比如说“endl”和“\n”的区别,endl清空缓冲区而\n不清空,这指什么意思?能不能说具体点,具体体现在什么地方不一样? 还有cerr和clog都是对应标准错误流的,只不过一个非缓冲,一个缓冲。我就是不明白这里是否非缓冲体现在什么地方。
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
mobihigh
2004-05-06
打赏
举报
回复
"c++为每个流关联一个缓冲区”只是指为每个流设定了缓冲区,输入输出
的数据先是存放在开辟的缓冲区中,只有当缓冲区满或者程序命令输出,
缓冲区的数据才会输入输出的。这些都由相应的类来实现的。并不需要你来
干预。
wuboy2000
2004-05-06
打赏
举报
回复
书上原文为:
c++将输入和输出看作字节流。c++为每个流关联一个缓冲区。输入来自此缓冲区,输出也写到此缓冲区。这意味这c++定义的I/O(输入\输出)是缓冲的。
这一段我就糊涂,“c++为每个流关联一个缓冲区”,是什么意思?是说先把要输入输出的字节放到一片内存空间(缓冲区)?
还有,“输入来自此缓冲区,输出也写到此缓冲区。”是不是说反了?
cngdzhang
2004-05-06
打赏
举报
回复
有缓冲的不是立即输出的,无缓冲的是立即输出的,
建立缓冲的目的是提高输入输出效率
endl是先输出'\n'再用cout.flush()进行刷新(清空);
c/
c++
中文帮助文档(API)
例如,`iostream`库提供了流式
输入输出
,`std::cin`用于从标准输入读取,`std::cout`用于标准输出;`vector`和`list`是两种常用的容器,它们存储和操作动态大小的元素集合;`algorithm`库包含了各种算法,如排序、...
C++
输入输出
和文件
二进制文件读写通常用于处理原始数据,如图像、音频、视频文件或结构化数据(如数据库文件),因为二进制读取方式能够保持数据的原始...
C++
的
输入输出
可以和C的
输入输出
同时使用,但scanf和printf的效率比cin和cout要高。
C++
输入输出
流
又比如,我们使用打印机打印文档,由于打印机的打印速度相对较慢,我们先把文档输出到打印机相应的
缓冲
区,打印机再自行逐步打印,这时我们的 CPU 可以处理别的事情。,这种方式是兼容C的写法。IO 操作与生俱来的一...
C++
中
输入输出
速度的优化
默认情况下,
C++
的
输入输出
流与 C 标准库的
输入输出
流是同步的,这意味着
C++
的
输入输出
流在每次操作后会调用 C 标准库的
输入输出
流来确保数据的一致性。...这两行代码是用于控制
C++
输入输出
流的同步和
缓冲
行为的。
缓冲
区设置_C/
C++
输入输出
缓冲
区
(给CPP开发者加星标,提升C/
C++
技能)来源:JustDoIThttps://www.cnblogs.com/TenosDoIt/p/3733243.html【导读】:本文介绍C与
C++
输入输出
缓冲
的一些操作与特性。以下是正文(1)
c++
中cin、cout,cerr和c的stdin、...
C++ 语言
65,199
社区成员
250,520
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章