当前位置:C++技术网 > 精选软件 > C++语言零基础入门教程:2.5 标准输入输出流的剖析

C++语言零基础入门教程:2.5 标准输入输出流的剖析

更新时间:2015-09-30 14:20:16浏览次数:1+次

    在C语言中,包含的标准输入输出头文件是stdio.h。这个头文件的完整的名称是standard input and output,即标准输入输出的意思。而在C++语言中,却包含的是iostream头文件。这头文件全名为input and output stream,也就是输入输出流。

    标准输入输出流,C++语言零基础入门教程
    在这一节里,我们只是对标准输入输出流做个概要性的了解,具体细节,将会在后续的章节讲解。
    要了解标准输入输出流,我们需要知道标准输入输出和流的概念。
    对于输入输出,我们经常会混淆,到底从哪到哪是输入,从哪到哪是输出,对于这个问题不清楚,经常会混淆。这个有一个相对的说法。主要看你的参考点是谁。你可以以CPU、内存、屏幕显卡缓存等作为参考点,数据流向这些参考点时,就叫做输入,如果从参考点流出到其他地方,就叫做输出。
    所以,要清晰这一点,你必须先找到参考点。你要从语境中准确判断参考点,这样才能正确的理解输入输出的具体含义,也就是清楚数据的流向。那么,这里都把数据的流动,比作了水流一样,是具有方向性的。数据在计算机内部流动,就和水流很相似。
    那么数据流是如何在内部运作体现的呢?你在一个地方产生的数据,要流向别处,自己这一方肯定要先存着准备发出,然后,对方那边必然也要有可以接受的存储的位置。不然数据过去没有地方存,就流失了。数据在计算机内部的传送,是用电脉冲信号传送的,简单来说就是电的传播。不同的电信号,代表了不同的数据单位状态,这个单位就是位(bit)。而这些位组合就形成了字节。你能比较感性的理解到数据流,就是从一端到达另一端,形成了一个方向。在逻辑上知道,数据就这么在计算机内部,由一个地方流向了另一个地方。对于具体的流动形式的物理特性,可以学习《计算机组成原理》。
    数据流就是这么一个从实际的物理特性抽象化的一个逻辑概念。听到这个词,你应该联想到一个数据的流向。所以你就会关注数据从哪里流向哪里。这是站在很高的地方俯视。
    而如果你站在某一段来看,就是数据的输入输出了。数据流进这一端,对于你这一端就是输入,对于发给你数据的那一端就是输出。当你这一端发送数据给另一端的时候,对你这一端来说就是输出,对另一端来说就是输入。
    这是一个理解的阐述。我们计算机,一般将内存或者CPU作为参考点,或者说是输入输出的中心,站在中心来看输入输出,而我们所说的也是以中心来讲的。
    在编程中,我们一般以内存为中心来讲。这些针对于变量之类的。给变量赋值就是输入,获取变量的值就是输出。对于文件来讲,从硬盘中读取文件数据到内存中,就做输入文件数据,将内存中的数据写入文件保存,叫做输出文件数据。那么,对于硬件设备类的输出(比如屏幕)和输入(比如键盘),叫做串输出和输入。
    那么,我们的标准输入输出,指的就是硬件设备类的输入输出了。其实,所谓的标准,还是人定的。只是一个说法而已。如果你要把牛说成马,你就把牛当做马就好。只是一个叫法而已。
    为什么将屏幕和键盘作为标准输出设备和标准输入设备呢?因为他们是很基本的东西了,也是使用最为频繁的。对于文件方面的,我们在文件部分会介绍。
    总结一下,对于标准输入输出流的理解,首先要了解流的抽象的概念,然后了解数据流的参考点,最后就是一个标准设备。