问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

详解C++入门:iostream

创作时间:
作者:
@小白创作中心

详解C++入门:iostream

引用
CSDN
1.
https://m.blog.csdn.net/muzibuku/article/details/140954272

在C++编程中,输入输出操作是基础中的基础。本文将详细介绍C++中最常见的头文件之一——iostream,包括其基本概念、使用方法以及一些实用的编程技巧。

前言

在C++入门时会遇到很多问题,如头文件、输入输出方式等,本文将一一解答这些问题。

一、头文件:iostream

iostream是C++最常见的头文件之一,它包含了include、预处理、extern、namespace等内容,还引入了ios、ostream、istream、streambuf等头文件。在这其中便包括了iostream库。

二、iostream库

iostream的意思是输入输出流,分别表示in(输入)out(输出)stream(流),其中流是指信息流,即数据像水流一样从一个地方流向另一个地方。

标准库定义了4个IO对象:

  • 处理输入时使用命名为cin(读作see-in)的istream类型对象,也称为标准输入。
  • 处理输出时使用命名为cout(读作see-out)的ostream类型对象,也称为标准输出。
  • 另外两个ostream对象,分别命名为cerr(读作see-err)和clog(读作see-log)。
  • cerr对象又叫作标准错误,通常用来输出警告和错误信息给程序的使用者。
  • clog对象用于产生程序执行的一般信息。

1.in(输入)out(输出)流

在运用这些流的时候要包含它们的来源,它们都在std命名空间中。为了防止系统无法识别,可以在代码中使用using namespace std;来展开std命名空间,但这可能会导致系统速度减慢。在某些情况下,可以只使用std::来说明,例如:

std::cout << "Hello, World!" << std::endl;

或者

using std::cout;
using std::endl;
cout << "Hello, World!" << endl;

其中:

  • <<(插入操作符):用于将数据发送到输出流。例如,cout << "Hello, World!";会将字符串"Hello, World!"输出到标准输出。
  • >>(提取操作符):用于从输入流读取数据。例如,cin >> number;会从标准输入读取一个值并存储到变量number中。

注意:在cout中显示是自动识别的,不需要像C语言一样要加识别符号(如整型用%d)。但是,当你想要控制输出时,可以用C语言的方式打印(C++完全支持C语言且包含#include)。

2.输出错误信息的标准错误流对象

cerr和clog都是输出错误信息的,但是二者有所不同:

  • cerr默认是不带缓冲的,即发送到cerr的内容会立即被输出到显示器(或与之关联的设备),而不需要等待缓冲区满或遇到特定的刷新操作。这使得cerr非常适合用于需要立即显示错误信息的场景。
  • clog是带缓冲的。这意味着发送到clog的内容会先被存储在缓冲区中,直到缓冲区满或遇到特定的刷新操作(如插入endl)时,才会被输出到显示器。

因此:

  • 当需要立即显示错误信息时,应使用cerr。
  • 当错误信息不需要立即显示,或者为了减少刷屏次数而希望将多个错误信息一起输出时,应使用clog。

需要注意的是,虽然cerr和clog都用于输出错误信息,但在某些情况下(如输出重定向),它们的行为可能会有所不同。因此,在选择使用哪个流时,应根据具体需求来决定。

本文原文来自CSDN

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号