- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PAGE 1
第13章 输入输出流
13.1 C++的输入和输出
13.1.1输入输出的含义
对系统指定的标准设备进行输入和输出。
以外存磁盘文件为对象进行输入和输出。
(3)对内存指定的空间进行输入和输出。
13.1.2 C++的I/O对C的发展——类型安全和可扩展性
13.1.3 C++的输入输出流
1. iostream类库中有关的类
图13.1
图13.2
图13.3
2. 与iostream类库有关的头文件
iostream fstream strstream stdiostream iomanip
3. 在iostream头文件中定义的流对象
4. 在iostream头文件中重载运算符
ostream operator (char *);
//用于向输出流插入一个字符串
coutC++;
相当于
cout.operator(C++);
对于自己的类,可用11章的方法进行重载。
13.2标准输出流
13.2.1 cout,cerr和clog流
cout流对象
cout流是流向显示器的数据。
输出基本类型数据时,可以不考虑数据的类型是什么。
cout流在内存中对应开辟了一个缓冲区,用来存放流中的数据,当向cout流插入一个endl时,不论缓冲区是否已满,都立即输出流中的所有数据,然后插入一个换行符,并刷新流(清空缓冲区)。
cerr流对象
cerr流是标准错误流。cerr流被指定与显示器关联。cout流通常是传送到显示器输出,但也可以被重定向输出到磁盘文件。
例13.1 解一元二次方程ax2+bx+c=0
#include iostream
#include math.h
using namespace std;
void main()
{
float a,b,c,disc;
coutplease input a,b,c:;
cinabc;
if (a==0)
cerra is equal to zero,error!endl;
else
if ((disc=b*b-4*a*c)0)
cerrdisc=b*b-4*a*c0endl;
else
{ coutx1=(-b+sqrt(disc))/(2*a)endl;
coutx2=(-b-sqrt(disc))/(2*a)endl;
}
}
please input a,b,c:0 2 3
a is equal to zero,error!
please input a,b,c:5 2 3
disc=b*b-4*a*c0
please input a,b,c:1 2.5 1.5
x1=-1
x2=-1.5
3. clog流对象
clog流也是标准错误流,也是在显示器上显示出错信息。与cerr的微小区别是:cerr不经缓冲区,直接向显示器上输出有关信息,而clog中的信息存放在缓冲区中,缓冲区满后或遇到endl时向显示器输出。
13.2.2格式输出
1. 使用控制符控制输出格式
例13.2用控制符控制输出格式
#include iostream
#include iomanip
using namespace std;
int main()
{int a;
coutinput a:;
cina;
coutdec:decaendl;
couthex:hexaendl;
coutoct:setbase(8)aendl;
char *pt=China;
coutsetw(10)ptendl;
coutsetfill(*)setw(10)ptendl;
double pi=22.0/7.0;
coutsetiosflags(ios::scientific)setprecision(8);
coutpi=piendl;
coutpi=setprecision(4)piendl;
coutpi=setiosflags(ios::fixed)piendl;
return 0;
}
input a:34
dec:34
hex:22
oct:42
China
*****China
pi=3+000
pi=3.1429e+000
pi=3.143
2. 用流对象的成员函数控制输出格式
例13.3 用流控制成员函数输出数据。
#include iostream
using namespace std;
void main()
{ int a=21;
cout.setf(ios::showbase);
coutdec:aendl;
cout.unsetf(ios::dec);
cout.setf(ios::hex);
couthex:aendl;
cout.unsetf(ios::he
您可能关注的文档
最近下载
- I’m more outgoing than my sister说课稿 人教版.docx VIP
- 总务处主任的述职报告范文.doc VIP
- 人教版2024八年级上册英语Unit 4 Section A (2a~2e) 课件.pptx VIP
- 人教版初二数学上册中考尺规作图复习教学设计 .pdf VIP
- Unit+4+Section+A+2a-2e课件+2025-2026学年人教版(2024)英语八年级上册.pptx VIP
- 小学总务处主任述职报告PPT.pptx VIP
- Unit 4 Section A (1a~2e) 课件2025-2026学年人教版八年级英语.pptx VIP
- 世界的地形课件七年级地理上学期人教版1.pptx
- 世界的地形课件七年级地理上学期人教版2.pptx VIP
- (正式版)DB15∕T 2748-2022 《绿色电力应用评价方法》.docx VIP
文档评论(0)