- 1、本文档共87页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
全国计算机二级考试C教程7课件
第十九章 I/O流
;本章主要内容;;为什么要有C++流类库;为什么要有C++流类库;C++中,用户自定义的对象很多。C++的类机制允许它可以建立一个可控制的输入输出系统。可以通过重载“”和“”运算符来解决以上的问题。;流类库和流;流类库和流;本章主要内容;C++语言为实现数据的输入输出定义了许多复杂的类,这些类都以ios为基类,其余都是它的直接或间接派生类。这些类以及它们之间的关系如图所示。;;率补萎伎雷蓬坛死恩山柠树孕链唉谈玲渺乞笨汕脐珊故句谅何脱檄礁霜悸全国计算机二级考试C++教程7课件全国计算机二级考试C++教程7课件;每种类标识符代表的含义如下:
ios:根基类
istream:输入流类
ostream:输出流类
fstreambase:文件流基类
strstreambase:字符串流基类
ifstream:输入文件流类
ofstream:输出文件流类
istrstream:输入字符串流类
ostrstream:输出字符串流类
iostream:输入输出流类
fstream:输入输出文件流类
strstream: 输入输出字符串流类
;I/O流类层次;;在类ostream中,对“”运算符进行了重载:
ostream operator(const char *);
ostream operator(char);
ostream operator(short);
ostream operator(int);
ostream operator(long);
ostream operator(float);
ostream operator(double);;;#include iostream.h
void fn(int a,int b){
if(b == 0)
cerr “zero encountered.”
else
cout a/b endl;
}
void main(){
fn(20,2);
fn(20,0);
;本章主要内容;文件;;在C++中,要进行文件的输入输出操作,应该:
先创建一个流对象
ofstream( const char* szName, int nMode = ios::out, int nProt = filebuf::openprot );
进行文件的读写操作
关闭文件
;文件打开方式:
ios::ate:到输入或输出文件的文件尾
ios::in: 打开输入文件(ifstream 默认)
ios::out: 打开输出文件(ofstream 默认)
ios::nocreate :如果文件不存在,返回错误ios::noreplace : 如果文件已存在,返回错误
ios::trunc : 如文件存在,清除文件内容
ios::binary : 以二进制模式打开文件;;#include fstream.h
int main(){
ofstream fout(c:\\data.dat);
if(! fout){
cerrCan’t open file \n;
return 1;
}
fout10 123.456\This is a file.\\n;
fout.close();
return 0;
};#include fstream.h
int main()
{
int x;
ifstream fin(c:\\data.dat);
if(fin.fail()){
cerrCan’t open file \n;
return 1;
}
while(!fin.eof()){
finx;
coutxendl;;
}
fin.close();
return 0;
};本章主要内容;I/O流库提供了用字符数组输入输出信息的操作。
ostrstream – 用于将信息输出至字符数组
istrstream – 用于从字符数组输入信息
strstream
;#include strstrea.h
char* parseString(char* pString){
istrstream inp(pString,0);
int aNumber;
float balance;
inpaNumberbalance;
char* pBuffer = new char[128];
ostrstream outp(pBuffer,128);
outpa Number=aNumber,
balance=balance;
return
文档评论(0)