C++Primer第一章难点——1.2节初识输入输出

C++Primer第一章难点——1.2节初识输入输出

1、iostream库
(1)IO库的作用:因为C++语言本身并未定义任何输入输出的语句,后来程序员添加了一个IO库来提供IO机制。iostream为内置类型对象提供了输入输出支持,同时也支持文件的输入输出,类的设计者可以通过对iostream库的扩展,来支持自定义类型的输入输出操作。

(2)iostream库包含两个基础类型istream类和ostream类,分别表示输入流和输出流。一个流就是一个字符序列,是从IO设备读出(cin从键盘读取字符序列)或从写入IO设备的(cout将字符序列写入显示器)。 流的意思是,字符是顺序生成或消耗的。

(3)标准输入输出对象
标准库定义了4个对象。
①istream类的对象cin,被称为标准输入
②ostream类的对象cout,被称为标准输出
③ostream类的对象cerr,被称为标准错误,通常用cerr来输出警告和错误消息。
④ostream类的对象clog,被用来输出程序运行时产生的一般性消息。

(4)输入输出的实现原理
系统通常将程序所运行的窗口与这些输入输出对象联系起来。
①当我们(运算对象)读取(使用)cin时,cin会从程序正在运行的窗口读入数据并存入运算对象中。
②当我们(运算对象)向cout,cerr,clog写入数据时,输出对象会将数据写到程序正在运行的窗口,并在窗口上显示出来。

(5)向流写入数据
输出运算符(<<),<<运算符接受两个运算对象:左侧的运算对象必须是一个ostream对象,右侧的运算对象是要打印的值。
<<运算符的作用:在程序正在执行的窗口打印出右侧的运算对象。
<<运算符的计算结果是其左侧运算对象,例如cout<<i;那么cout<<i计算完后的结果就是cout。

②向流写入数据的形式:如cout<<i<<endl;因为输出运算符的返回结果就是其左侧运算对象,所以可写成cout<<i;cout<<endl;。
解释:编译器将i和endl的内容写入cout中,cout再把这些内容写入到窗口,并在窗口打印出来。

(6)从流读取数据
输入运算符(>>),>>运算符接收两个运算对象:左侧的运算对象必须是一个istream对象,右侧的运算对象能够从cin读取数据,并存储数据。
>>运算符的作用:左侧运算对象cin从输入设备(键盘)读取数据,并将数据存入右侧对象中。
输入运算符的计算结果也是左侧运算对象。

②从流读取数据的形式:如cin>>i>>j;因为输入算符的计算结果是左侧运算对象,所以该语句可写成cin>>i;cin>>j;。
解释:编译器通过cin来读取键盘输入的数据,并把数据存入到输入运算符(>>)的右侧运算对象中。

猜你喜欢

转载自blog.csdn.net/qq_47466050/article/details/106690487