什么是标准输入、标准输出(stdin、stdout)?

您所在的位置:网站首页 一般的键盘是什么标准 什么是标准输入、标准输出(stdin、stdout)?

什么是标准输入、标准输出(stdin、stdout)?

#什么是标准输入、标准输出(stdin、stdout)?| 来源: 网络整理| 查看: 265

原文地址:什么是标准输入、标准输出(stdin、stdout)?

要弄清什么是标准输入输出。首先需要弄懂什么是IO。 IO 的 I 是 Input 的意思,O 是 output 的意思。 意味着输入和输出。 更确切的含义是: I:从外部设备输入到内存 O:从内存输出到外部设备

而标准输入和标准输出是干什么的?它们是用于 IO 的。 那么它们属于 IO 的哪个部分? 内存?还是外部设备? 答案显然是外部设备(逻辑上的外部设备,为什么?接着看)。

更具体的含义? 在 linux 操作系统中,外部设备用什么表示?是用文件。 linux 中一切设备皆是文件! 因此标准输入和输出更具体的含义是文件。

它们是哪两个文件? 它们是 /dev/stdin 这个文件和 /dev/stdout 这个文件。 也就是说所谓的标准输入和标准输出其实就是两个 linux 下的文件。

linux 的文件类型有: 1、普通文件2、字符设备文件3、块设备文件4、目录文件 5、链接文件6、管道文件7、套接字文件 思考一下?它们是什么文件?它们在 /dev 目录下,它们是设备文件吗?

那么所谓的从标准输入读是什么意思? 逻辑上来看: 就是打开 /dev/stdin 这个文件,然后把这个文件里的内容读进来。 输出到标准输出是什么意思? 逻辑上来看: 就是打开 /dev/stdout 这个文件,然后把内容输出到这个文件里去。

为什么是从逻辑上来看?因为它们不是设备文件!!! 所以它们不代表一个设备。linux里一切皆是文件,设备是文件,但是文件不一定是设备! 那它们是什么文件?他们是链接文件。(可以用 ls -l /dev 来查看 l 开头的就是链接文件。也可以用 file 命令查看其文件类型,命令:file /dev/stdin) 什么是链接文件?文件内容是另一个文件的地址的文件称为链接文件。 因此,打开、读或者写 /dev/stdin 和 /dev/stdout 实际上是打开、读或者写这两个文件存放的地址对应的设备文件。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3