编辑“︁
Iostream
”︁(章节)
跳转到导航
跳转到搜索
警告:
您没有登录。如果您进行任何编辑,您的IP地址会公开展示。如果您
登录
或
创建账号
,您的编辑会以您的用户名署名,此外还有其他益处。
反垃圾检查。
不要
加入这个!
==输入/输出流== '''<code>iostream</code>'''头文件定义了输入输出流对象:'''<code>cin</code>''', '''<code>cout</code>''', '''<code>cerr</code>''', '''<code>clog</code>'''分别为标准输入、输出、错误(无缓冲)、簿记(有缓冲)的流对象。都属于'''<code>std</code>''' [[名字空间]]。<ref>{{cite book|last=Holzner|first=Steven|title=C++ : Black Book|year=2001|publisher=Coriolis Group|location=Scottsdale, Ariz.|isbn=1-57610-777-9|page=584|quote=...endl, which flushes the output buffer and sends a newline to the standard output stream.}}</ref> ===ostream对象=== '''<code>cout</code>'''属于'''<code>ostream</code>'''类型,重载了左移位算符。cout左移位算符的运算结果为cout自身,这使得连续的左位移操作输出一串数据成为可能。'''<code>cerr</code>'''与'''<code>clog</code>'''对象是'''<code>ostream</code>'''类型。 ===istream对象=== '''<code>cin</code>'''是'''<code>istream</code>'''类型,重载了右位移算符。 输入设备是按照行来把数据移入流输入缓冲区。也就是说,键盘输入数据时,只有按了换行键,这一行数据才进入缓冲区,可以读取。 表达式<code>cin >> ival</code>从标准输入读入一个值。有两种情况会使一个istream对象的bool转型为false:读到[[EOF]](文件结束标志)或遇到一个无效的值(输入流进入fail状态)。可以用该istream对象的成员函数good()来测试,或者直接(bool)cin来测试。 istream对象的bool转型为false的情况下,此后的所有读入动作都是无操作(nop)。直到调用istream对象的成员函数clear()来清除该对象的内部状态。 缺省情况下,输入操作符丢弃空白符、空格符、制表符、换行符以及回车。如果希望读入上述字符,或读入原始的输入数据,一种方法是使用istream的get()成员函数来读取一个字符,另一种方法是使用istream的getline()成员函数来读取多个字符。istream的read(char* addr, streamsize size)函数从输入流中提取size个连续的字节,并将其放在地址从addr开始的内存中。istream成员函数gcount()返回由最后的get()、getline()、read()调用实际提取的字符数。 输入流有三个函数来测试流状态:即bad(), fail()和eof()。ignore()用来抛掉制定个数的缓冲区中的字节。 其它的istream成员函数:putback( char c ) 将字符放回iostream;unget()往回重置“下一个”istream项;peek()返回下一个字符或EOF,但不要提取出来 。
摘要:
请注意,所有对Local Chinese Wikipedia的贡献均可能会被其他贡献者编辑、修改或删除。如果您不希望您的文字作品被随意编辑,请不要在此提交。
您同时也向我们承诺,您提交的内容为您自己所创作,或是复制自公共领域或类似自由来源(详情请见
Project:著作权
)。
未经许可,请勿提交受著作权保护的作品!
取消
编辑帮助
(在新窗口中打开)
导航菜单
个人工具
未登录
讨论
贡献
创建账号
登录
命名空间
页面
讨论
大陆简体
不转换
简体
繁體
大陆简体
香港繁體
澳門繁體
大马简体
新加坡简体
臺灣正體
查看
阅读
编辑
查看历史
更多
搜索
导航
首页
最近更改
随机页面
MediaWiki帮助
工具
链入页面
相关更改
特殊页面
页面信息