第九章C++IO流库.ppt

  1. 1、本文档共20页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第九章 C++的I/O流库 9.1 流 9.2 磁盘文件 9.3 程序举例 * 9.1流 内存 设备 数据 数据 输出 输入 标准输出流 cout cout是系统定义过的ostream类的一个对象,该类提供的多种输出功能都适用于cout,包括: 使用流插入操作符(<<)输出各种数据 通过成员函数put输出字符 通过成员函数write输出字符串 1.成员函数put的使用 格式: 作用为在屏幕上输出一个字符,返回值为ostream类对象的引用,故函数可以连续调用。 cout.put(char c) cout.put(const char c) 或 字符变量 字符常量 #include "iostream.h" void main() {char ch='A'; cout.put(ch)<<endl; cout.put('O').put('k')<<endl; } 例9.1 连续调用 2.成员函数write的使用 格式: 作用是将一个字符串的部分或全部内容在屏幕上输出。 该函数的返回值为ostream类对象的引用,故函数可以连续调用。 cout.write(const char *str,int n) 字符数组或字符指针 输出的字符个数 #include "iostream.h" #include <string.h> void main() {char *ch="ABCDEFGHIJKLMN"; cout.write(ch,10).put('\n'); //输出该字符串的前10个字符 cout.write(ch,strlen(ch))<<endl;//输出全部字符串 } 例9.2 标准输入流 cin cin是系统定义过的istream类的一个对象,该类提供的多种输入功能都适用于cin,包括: 使用流提取操作符(>>)输入数据 通过成员函数get输入字符或字符串 通过成员函数read输入字符串 1.成员函数get的使用 格式: 作用为从键盘上输入一个字符给内存变量ch,返回值为ostream类对象的引用,故函数可以连续调用。 cin.get(char ch) ch=cin.get( ) 或 字符变量 注意:空白符作为有效字符被读入,不同于使用提取符(>>) 例9.3 统计字符串中包含的字符个数 #include "iostream.h" void main() {int count=0; char ch; cout<<"input a serial of characters:"<<endl; while((ch=cin.get())!=EOF) // 按ctrl+z结束输入 {cout<<ch; count++; } cout<<count<<endl; } 不断输入字符,直到输入结束符 1.观察运行结果 2. 将循环条件改为 cin>>ch 程序结果又如何? 3.对比两种输入方法的区别 使用get成员函数读入一行字符串,也可以用成员函数getline实现,形式如下: cin.get(char *buf,int size,char ch) cin.getline(char *buf,int size,char ch) 存放字符串的字符数组或字符指针 限定最大字符个数不能超过size-1 指定的结束符,该字符不包含在字符串中,默认结束符为‘\n’ #include "iostream.h" #include "string.h" void main() {int line,max=0; char s[50],t[50]; cout<<"input a string:"<<endl; while((cin.getline(s,50))) { line=cin.gcount(); //line中存放的是刚刚读入的那行字符串的长度 if(line>max) {max=line; strcpy(t,s); } } cout<<"the string of longest line is:"<<endl; cout<<t<<endl; cout<<"it has "<<max<<"characters"<<endl; } 例9.4 找最长串 输入一行字符串,最大长度不能超过49 若改为cin.getline(s,50, ' ') 结果如何? 2. 成员函数read的使用 格式: 例9.5 cin. read(char *buf, int size) 读取到字符数组中的字符个数(不同于getline函数) #

文档评论(0)

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

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

1亿VIP精品文档

相关文档