对象
<cstdio>

stdin

FILE * stdin;
标准输入流
标准输入流是应用程序数据的默认来源。在大多数系统中,它通常默认指向键盘。

stdin可以用作需要输入流(FILE*)作为参数的任何函数的参数,例如 fgetsfscanf

虽然人们通常认为stdin的标准输入源将是键盘,但即使在常规控制台系统中,情况也可能并非如此,因为在调用应用程序时,stdin通常可以在大多数操作系统上进行重定向。例如,包括 DOS/Windows 和大多数 UNIX shell 在内的许多系统都支持以下命令语法:

myapplication < example.txt

以使用文件example.txt的内容作为myapplication的主要数据源,而不是控制台键盘。

也可以在程序内部使用 freopen 函数将stdin通过使用 freopen 函数将流重定向到其他数据源。

如果已知stdin已知不指向交互式设备,该流是*完全缓冲*的。否则,流是否默认*行缓冲*或*不缓冲*取决于库(请参阅 setvbuf)。

另见