什么是标准输入、标准输出(stdin、stdout)?
原文地址:什么是标准输入、标准输出(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开头的就是链接文件。)
什么是链接文件?文件内容是另一个文件的地址的文件称为链接文件。
因此,打开、读或者写 /dev/stdin和/dev/stdout 实际上是打开、读或者写这两个文件存放的地址对应的设备文件。
- linux 关于标准输入输出错误 STDIN STDOUT STDEER
- 谁为我们打开了STDIN_FILENO, STDOUT_FILENO, STDERR_FILENO,标准输入、标准输出和标准错误
- stdout stdin python里面的标准输出和输入
- 标准输入、标准输出究竟是什么? .
- 第4章 处理用户输入与显示数据------------(标准文件描述符、STDIN/STDERR/STDOUT、临时重定向、永久重定向exec)
- 第4章 处理用户输入与显示数据------------(标准文件描述符、STDIN/STDERR/STDOUT、临时重定向、永久重定向exec)
- linux标准输入流,标准输出流 stdin stdout大概是什么个概念
- 标准输入、标准输出究竟是什么?
- 第4章 处理用户输入与显示数据------------(标准文件描述符、STDIN/STDERR/STDOUT、临时重定向、永久重定向exec)
- linux 输入--输出--重定向 stdin/stdout/stderr
- 标准输入、标准输出究竟是什么?
- 标准输入、标准输出究竟是什么?
- Python第十天 print >> f,和fd.write()的区别 stdout的buffer 标准输入 标准输出 从控制台重定向到文件 标准错误 重定向 输出流和输入流 捕获sys.exit()调用
- 以下通讯电路,输入是标准的RS232信号TTL电平,输出什么信号呀?是标准的422信号吗?硬件高手请进做客!
- python 以标准输出(sys.stdout)为例,看python的标准输入、标准错误输出
- process.stdin的end事件如何触发?---关于nodejs底层的标准输入与输出的坑
- io学习:标准输入、标准输出、标准出错
- c 标准输入输出
- 第二十讲: C++的输入和输出与标准输出流
- mpg123 把mp3文件解码到标准输出设备(stdout)