雅乐网

计算机技术、学习成长

编程 » C/C++ » C++笔记2——标准输入输出库

C++笔记2——标准输入输出库

一、iostream

scrn20161129195023

iostream库又叫做标准输入输出库(Standard Input / Output Streams Library),它包含两个基础类型:istream和ostream,分别表示输入流和输出流。其中定义了4个IO对象:

cin是istream对象,称为标准输入(standard input)

cout是ostream对象,称为标准输出(standard output)

另外还有两个ostream对象:cerr(标准错误)和clog(用来输出运行时的日志信息)

一般系统把程序运行窗口和这些对象关联,读取cin时就会从窗口读取,向cout、cerr和clog写数据时,会写到窗口。

要使用iostream库,首先要包含该头文件

但是,之后还不能直接使用cout,这是因为c++中引入了命名空间(namespace)的概念,它可以帮助避免一些命名冲突的问题。标准库中定义的名字都在命名空间std中,当使用时需要通过作用域运算符(::)来指出。这样使用cout就应该用std::cout。

向流写入数据(输出)

一个输出hello world的例子如下:

其中endl是一个特殊的操纵符,它的效果是结束当前行,并将缓冲区的内容写入到设备。

左移运算符<<在c++中又称为输出运算符,它左侧是ostream对象,右侧就是要输出的值,作用就是在输出对象上打印消息。由于它的运算结果正好是左侧的那个ostream对象,因此可以连用:

std::cout << “hello”的结果还是std::cout,上面这句话相当于两句:

命名空间

除了每次使用std::使用标准库中的名字,还可以使用using声明来一劳永逸。它的格式如下:

使用之后可以直接访问这个name

还可以直接使用using指示,引入一个命名空间的所有名字

使用之后,可以直接使用std下面的所有名字。一般不推荐使用,因为std中有很多名字,可能会和你自己的变量名字冲突。

从流读取数据(输入)

右移运算符>> 也称为输入运算符,它左侧是一个istream对象,右侧是要写入内容的对象。它从istream中读取数据,并写入到右侧的对象中。和<<类似,它的结果也是左侧的istream对象,因此也可以连用

当需要读取的数据个数未知时,可以检测cin对象的值。下面是一个计算求和的例子

当遇到文件结束符(end-of-file,windows命令行中可以通过Ctrl+z模拟)或者遇到无效输入(上例中输入不是数字)时,istream对象的状态会变为无效,从而跳出while循环。

c中的输入输出函数

c++中也可以使用printf和scanf这些c中的输入输出函数,头文件为cstdio。

c中的大部分头文件都有对应的c++版本,头文件名字为c中的名字去掉.h并在最前面加c。

如果文章对你有帮助,欢迎点赞或打赏(金额不限)。你的打赏将全部用于支付网站服务器费用和提高网站文章质量,谢谢支持。

版权声明:

本文由 原创,商业转载请联系作者获得授权。
非商业转载请注明作者 雅乐网 ,并附带本文链接:
https://www.yalewoo.com/cpp_notes_2_input_and_output_library.html

上一篇:

下一篇:

我要评论

验证码*: 7 + 3 =