C++学习笔记--输入输出流
2017-03-18 23:33
260 查看
标准输出流
ostream类定义了cout,cerr,clog三个对象。1.cout(console output)
(1)不是C++的关键字,是ostream定义的类。(2)用<<运算符重载,定义了基本的数据类型。
(3)cout在内存中开辟缓存区,插入endl时清空缓存区并换行;’\n’只换行,不清除。(但也因编译器而异)
格式输出:
a.使用控制符控制格式输出
#include<iostream> #include<iomanip>//定义控制符,部分控制符,如setw(设置字段宽度的位数),只对紧接着的第一个数据起作用 using namespace std; double a=123.456789012345; cout<<a; //123.456 cout<<setprecision(9)<<a; //123.456789 cout<<setiosflags(ios::fixed)<<setprecision(8)<<a;//123.45678901
b.用流对象的成员函数控制输出格式
流成员函数:
precision(n),设置实数的精度为n位
width(n),设置字段宽度n
fill(c),设置填充字符c
setf(),设置输出格式
unsetf(),终止设定的输出格式
cout.precision(6); cout<<pi<<endl; cout.setf(ios::scientific); cout.width(14);
2.cerr(console error)
与cout的区别:只能在显示器输出,不能输出到磁盘文件。3.clog(console log)
与cerr类似。区别:cerr不经过缓冲区直接向屏幕输出。clog先存在缓冲区中。标准输入流
1.cin流
cin是istream类的派生类的对象。(1).”>>”通常跳过空格、Tab键、换行等空白字符。
(2).遇到无效字符或文件结束符(Ctrl+Z或Ctrl+D),cin=0;正常状态cin非负。
2.输入流的成员函数
(1)cin.get(),cin.get(ch),cin.get(字符数组,字符个数,’终止字符’)#include<iostream> using namespace std; void main() { char ch; char ch1[5]; double a = 123.4567890123; cout.precision(10); cout << a << endl; cin.get(ch);//提取一个字符,包括空白字符 cout << "ch:" << ch << endl; cin.get(ch1, 5, '.');//提取5个字符,遇到"."结束,赋给字符数组(或字符指针)ch1 cout << "ch1:" << ch1 << endl; system("pause"); }
(2)eof(end of file)
#include<iostream> using namespace std; int main() { char c; while (!cin.eof())//eof()为假表示没有遇到文件结束符 if ((c = cin.get()) != ' ')//检查读入字符有无空格 cout.put(c); return 0; } /* C++ is very interesting. C++isveryinteresting. ^Z //Ctrl+Z 请按任意键继续. . . */
(3)cin.putback()
将get或getline函数从流中读取的字符ch返回到输入流中,插入到当前指针的位置。
void main() { char c[20]; cout << "please enter a sentence:" << endl; cin.getline(c, 15, '/'); cout << "first:" << c << endl; cin.putback(c[0]); cin.getline(c, 15, '/'); cout << "second:" << c << endl; system("pause"); } /* please enter a sentence: I am handsome./ am crazy./ first:I am handsome. second:I am crazy. 请按任意键继续. . . */
(4)cin.ignore(n,’终止字符’)
ignore()//(n默认值为1,终止字符默认为EOF)
相关文章推荐
- c++学习笔记01-输入输出流&&文件输入输出操作
- C++学习笔记(一) —— 输入输出流
- 2012/2/11 《C++ Primer Plus》第十七章:输入、输出和文件 学习笔记
- C/C++学习笔记2 - cin深入分析(上) - cin输入操作处理
- 输入输出流7.28学习笔记
- C++中输入输出流及文件流操作笔记
- C++学习笔记之输入和输出
- C++每次读取一行字符串输入(学习笔记) (转)
- Java学习笔记之输入输出流(一) File、文件字节流、文件字符流
- 7.29学习笔记字符输入输出流
- 《C++ Primer Plus》第17章 输入、输出和文件 学习笔记
- 2012/2/11 《C++ Primer Plus》第十七章:输入、输出和文件 学习笔记
- Java学习笔记(六、输入和输出流)
- C++学习笔记:文件输入和输出
- Java学习笔记(输入和输出流)
- java学习笔记-输入输出流
- C++ FAQ学习笔记 15 章 通过 <iostream> 和 <cstdio>输入/输出
- 【C++】【学习笔记】【005】输入输出小结
- (学习笔记)c++中cin相关输入
- Java学习笔记之输入输出流(二) 缓冲流、随机流、数组流、数据流、对象流