C++ IO流 C++ 系统IO流介绍
一个热爱学习的深度渣渣 人气:0想了解C++ 系统IO流介绍的相关内容吗,一个热爱学习的深度渣渣在本文为您仔细讲解C++ IO流的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:C++系统 IO流,c++IO流,下面大家一起来学习吧。
前言:
本次讲解一个小知识点,也是最常见的一个知识点:iostream
;不管编写什么程序,必然会使用到IO流交互,从细节上理解简单的IO流;
1、iostream标准库
定义:标准库所提供的IO接口,用于与用户交互;
输入流:cin
输出流:cout
、cerr
、clog
输出流三者的一个区别:
- 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格式化库:新的方案(目前还不常用);
4、总结
本次就讲这么一点知识点,这也是入门C++的很多人疑惑的点,相信大部分人都是从输出"Hello World"开始的,那么C++中的IO细节估计没有弄懂,看完本篇就会有一个清晰的认知;
加载全部内容