如何分析C++ 系统IO流

本篇文章为大家展示了如何分析C++ 系统IO流,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

前言:

本次讲解一个小知识点,也是最常见的一个知识点:iostream;不管编写什么程序,必然会使用到IO流交互,从细节上理解简单的IO流;

1、iostream标准库

定义:标准库所提供的IO接口,用于与用户交互;

输入流:cin

输出流:coutcerrclog

输出流三者的一个区别:

  • 1、首先就是输出目标的不同,cerr主要用来输出错误信息,clog主要用来输出日志信息;

  • 2、cerr有个最大的不同,会立即刷新缓冲区,输出比较快,另外两种输出信息可能在程序崩溃时会丢失;

缓冲区刷新还有别的方法:std::flush、std::endl;

2、namespace

主要是为了避免名称冲突,可见如下代码:

namespace People1
{
 void fun(){}
}
namespace People2
{
 void fun(){}
}

上面代码中有两个同名函数,编译是可通过的,这就是命名空间的作用;

在使用fun()这个函数时,需要指定命名空间;

命名空间的使用有以下三种方式:

// 1、域解析符::
People1::fun();

// 2、using语句
using namespace People1;
fun();

// 3、命名空间别名
namespace ns1 = People1;
ns1::fun();

注意:std就是标准库的命名空间,也是最常用的一个命名空间;

3、C和C++输出区别

  • printf:使用直观,但容易出错;

  • cout:不容易出错,但书写冗长;

  • C++20格式化库:新的方案(目前还不常用);

上述内容就是如何分析C++ 系统IO流,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注行业资讯频道。