浅谈C++中的buffer

一、C++中buffer是什么?

1、buffer就是缓冲区的意思。当数据从其他地方接受过来在处理前,先保存至缓冲区,然后进行发送,主要用于处理能力或效率不相同的两个设备之间进行协调。
2、buffer一般用来定义数组,因为它本身的意思就是“缓冲区”,在C语言里,数组就是个缓冲区,所以用常常用它。用它没有别的意思,就是方便记,可以用shuzu mydata甚至自己名字的拼音都行,主要是用它别人也很容易懂这个变量是什么作用的。

二、何为缓冲区?

缓冲区又称为缓存,它是内存空间的一部分。也就是说,在内存空间中预留了一定的存储空间,这些存储空间用来缓冲输入或输出的数据,这部分预留的空间就叫做缓冲区。
缓冲区就是一块内存区,它用在输入输出设备和CPU之间,用来缓存数据。它使得低速的输入输出设备和高速的CPU能够协调工作,避免低速的输入输出设备占用CPU,解放出CPU,使其能够高效率工作。
缓冲区根据其对应的是输入设备还是输出设备,分为输入缓冲区和输出缓冲区。缓冲区分为三种类型:全缓冲、行缓冲和不带缓冲。

三、缓冲区的刷新
下列情况会引发缓冲区的刷新:
  • 缓冲区满时;
  • 执行flush语句;
  • 执行endl语句;
  • 关闭文件。
可见,缓冲区满或关闭文件时都会刷新缓冲区,进行真正的I/O操作。另外,在C++中,我们可以使用flush函数来刷新缓冲区(执行I/O操作并清空缓冲区),如:
  1. cout<
  2. endl控制符的作用是将光标移动到输出设备中下一行开头处,并且清空缓冲区。
  3. cout<
相当于cout<<”\n” <

内容会随着学习的深入,后续更新。
【浅谈C++中的buffer】参考博客:点击打开链接

    推荐阅读