流类库与输入.输出.ppt

  1. 1、本文档共46页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
流类库与输入.输出

第十一章 流类库与输入/输出 本章主要内容 I/O流的概念 标准输入输出 文件操作 I/O流的概念 流是对输入/输出的一个抽象表述。 程序通过从流中提取字符和向流中插入字符来实现输入和输出。 I/O流类库是一个提供输入/输出功能的,面向对象的类库。 I/O流类库的层次结构 标准输入输出流对象 cout 标准输出,默认输出设备屏幕 cerr 标准错误输出,没有缓冲,发送给它的内容立即被输出,默认输出设备屏幕。 clog 类似于cerr,但是有缓冲,缓冲区满时被输出,默认输出设备打印机。 cin标准输入,默认输入设备键盘 运算符 插入()运算符是所有标准C++数据类型预先设计的,用于传送字节到一个输出流对象。 提取运算符()对于所有标准C++数据类型都是预先设计好的,它是从一个输入流对象获取字节最容易的方法。 使用流对象成员函数 用getline()读取输入行:读取分隔符 用get()输入一系列字符:不读取分隔符 用ignore()读取并丢弃一系列字符 用get()读取一个字符 用put()输出一个字符 用peek()查看输入流中的下一个字符 用read()实现无格式输入 用write()实现无格式输出 使用get和 put成员函数输入输出字符 #include iostream using namespace std; int main() { int ch; cout Input a sentence: endl; while ((ch = cin.get())!= EOF) cout.put(ch); //使用get和 put来读取显示字符 return 0; } 使用peek()成员函数输入输出字符 #include iostream using namespace std; int main() { int ch; cout Input a sentence: endl; while (cin.peek()!=‘*’) { cin.get(ch); cout.put(ch); return 0; } 流状态 eofbit 如果到达文件尾,则设为1 badbit 如果流被破坏,则设为1 failbit 如果输入没有读到预期字符或输出没有写 入预期字符,则设置为1 eof() eof被设置,返回true fail() badbit或failbit被设置,返回true clear() 流状态控制 if(cin.fail()!cin.eof()) { cin.clear(); while(!isspace(cin.get())) continue; } 控制输出格式 成员函数方式 包含头文件iostream precision(n),width(n),flags(c),flags(8), flags(16),flags(10),fill(c) 用控制符 包含头文件iomanip setprecision(n),setw(n),setfill(c),oct, hex,dec, setiosflags() ,resetiosflags() 设置整数流的基数—— dec、oct、hex和setbase #include iostream #include iomanip using namespace std; int main() { int num; cout Enter a dec number: ; cin num; //使用hex流操纵符显示十六进制整数 cout num in hex is: hex num endl; //使用oct流操纵符显示八进制整数 cout dec num in oct is: oct num endl; //使用setbase流操纵符显示十进制整数 cout setbase(10) num in dec is: num endl; return 0; } 设置浮点数精度—— precision和setprecision #include iostream #include iomanip #include cmath using namespace std; int main()//设置小数点后面的位数 { double root = sqrt( 3.0 ); cout set by precision:\n fixed; //使用fixed精度 for (int

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档