格式化和未格式化的输入和输出以及流

Exp*_*ice 2 c c++

我曾在一些关于格式化和未格式化I/O的网站上阅读过一些文章,但是现在我的思绪更加混乱了.

我知道这是一个非常基本的问题,但我会要求任何人都可以提供链接[某些网站或之前在Stackoverflow上回答的问题],这解释了C和C++中的流的概念.

另外,我想了解Formatted和Unformatted I/O.

ybu*_*ill 5

该标准没有定义这些术语的含义,它只是说标准中定义的哪些函数是格式化IO而哪些不是.它对这些功能的实现提出了一些要求.

格式化IO只是使用<<>>运算符完成的IO .它们旨在与数据的文本表示一起使用,它们涉及对正在读取或写入的数据的一些解析,分析和转换.格式化输入跳过空格:

每个格式化的输入函数通过使用noskipws(第二个)参数false构造类哨兵的对象来开始执行.

未格式化的IO读取和写入数据就像一系列"字符"(可能应用codecvt了嵌入的语言环境).它意味着读取和写入二进制数据,或者作为格式化IO实现的低级别.未格式化的输入不会跳过空格:

每个未格式化的输入函数通过使用默认参数noskipws(second)参数true构造类哨兵的对象来开始执行.

并允许您使用以下方法检索上次输入操作读取的字符数gcount():

返回:为对象调用的最后一个未格式化的输入成员函数提取的字符数.