返回首页

何谓标准输出(stdout)和标准输入(stdin)?

190 2024-09-05 15:04 admin

一、何谓标准输出(stdout)和标准输入(stdin)?

stdin是操作系统调用应用程序的时候事先打开的两个文件,你程序执行的时候scanf等默认输入系统调用,操作系统就从这个文件里面取给你的程序,有可能是键盘,也有可能是其它文件,有具体运行时的命令决定。 stdout类似

二、控制台,stdin-stdout之间是什么关系?

1.stdin:标准输入,即从键盘输入的字符、数字、标点符号等信息。

2.stdout:标准输出,显示器屏幕显示,或输出到磁盘,或打印机打印出来的信息。

当一个用户进程被创建的时候,系统会自动为该进程创建stdin(=0)、stdoutr(=1)等数据流

三、stdout类的对象是?

C语言中的 stdout 是一个定义在<stdio.h>的宏(macro),它展开到一个 FILE* (“指向 FILE 的指针”)类型的表达式(不一定是常量),这个表达式指向一个与标准输出流(standard output stream)相关连的 FILE 对象。

四、linux中stdout是什么?

我的回答:stdout是终端的标准输出。

我的分析:在Linux中执行命令,一般会打开三个标准文件。包括:标准输入文件stdin,标准输出文件stdout和标准错误输出的文件stderr。

 std代表标准的:standard,input/output表示输入/输出。err代表error错误。

标准输入文件,一般是stdin,对应的终端是键盘。

标准输出文件stdout和标准错误输出文件stderr,对应的终端是屏幕。

一般进程从标准输入文件中得到输入数据,比如参数。把正常输出数据输出到标准输出文件stdout,把错误信息送到标准错误输出文件中。

 Linux中一般用0表示stdin标准输入,用1表示stdout标准输出,用2表示stderr标准错误输出。

一般在默认的情况下,标准输出stdout是行缓冲的,是把输出放到一个buffer里面,只有换行的时候,才会输出到屏幕。

一般标准错误输出stderr是无缓冲的,直接输出。

五、stdin是什么类型符?

stdin是文件描述符,代表标准输入(键盘等),也就是说在linux中stdin称为终端(Terminal)的标准输入(standard input)。

在linux中经常会看到stdin,stdout和stderr,这3个可以称为终端(Terminal)的标准输入(standard input),标准输出( standard out)和标准错误输出(standard error)。

通过man stdin查看手册,可以看到它们都是在stdio.h中定义的。 当linux开始执行程序的时候,程序默认会打开这3个文件流,这样就可以对终端进行输入输出操作。

六、C语言fflush(stdin);的用法?

首先,你的第二个 fflush(stdin);位置不正确,它一般用在cin的前面另外, fflush(stdin);只能清除输入的内容,并不能清除输入错误的状态而在c++中,你可以用cin.sync();代替它并在它的前面加 cin.clear(); //清错误状态

七、docker logs收集的是stdout的吗?

是的,如果需要收集错误日志,将其重定向到stdout,在执行命令后面加2>&1

八、C语言fflush(stdin)是什么意思?

调用

fork

后,

子进程

获得

父进程数据段

副本

缓冲区

是在

上的,所以

子进程

也获得了

父进程

缓冲区

标准I/O的

缓冲模式

有三种(全缓冲、行缓冲、不缓冲)

根据你的程序来看,极有可能是全缓冲模式。

全缓冲模式默认要达到

4096

字节才会释放缓冲区,除非手动释放缓冲区。

下列程序使用了

fflush

函数手动释放缓冲区,则不会出现上述问题。

当然,你也可以利用

setbuf函数族

传入

mode参数

来设置它的

缓冲类型

.

_IONBF: 不缓冲 _IOLBF: 行缓冲 _IOFBF: 全缓冲

参考 ---《Linux系统编程手册》上册 P195

九、python sys.stdout.write这个怎么理解?

sys.stdout是标准输出文件。write就是往这个文件写数据。合起来就是打印数据到标准输出。对初学者来说,和print功能一样。

十、fflush(stdin)是什么函数什么意思?

1.fflush函数包含在stdio.h头文件中,用来强制将缓冲区中的内容写入文件。

2.函数原型:int fflush(FILE *stream) ;

3.函数功能:清除一个流,即清除文件缓冲区,当文件以写方式打开时,将缓冲区内容写入文件。也就是说,对于ANSI C规定的是缓冲文件系统,函数fflush用于将缓冲区的内容输出到文件中去。

4.函数返回值:如果成功刷新,fflush返回0。指定的流没有缓冲区或者只读打开时也返回0值。返回EOF指出一个错误。

5.下面给出一个具体的例子来演示该函数使用的方法: #include

顶一下
(0)
0%
踩一下
(0)
0%
相关评论
我要评论
用户名: 验证码:点击我更换图片

网站地图 (共30个专题219292篇文章)

返回首页