例如, stdio.h 库有一些需要 FILE * 参数的函数,但接受来自终端的用户输入的 stdin .
stdio.h
FILE *
stdin
C stdio 函数对流而不是文件进行操作 . 就代码而言,流只是字节的消费者(输出流)或 生产环境 者(输入流) .
stdio
流可以与磁盘上的文件相关联 . 它也可能与终端相关联 . 或打印机 . 或者是网络套接字 . 或者您可能想要与之沟通的任何其他内容 . 流是任何可以读取或写入字节串的东西的抽象 .
stdin 和 stdout (以及 stderr )是预定义的 FILE * 对象,通常是指您的控制台,尽管您可以在命令行或代码中覆盖它 .
stdout
stderr
stdin 和 stdout 只不过是标准输入和输出文件的指针 . 由于您可以在代码中或使用命令提示符更改这些内容,因此这些内容无法指向实际输入,因为您无法更改它 .
stdin 和 stdio 只是从 standard output 或 standard input 读取或写入的文件中获取信息 . 这样,使用命令和代码更改它会容易得多 .
standard output
standard input
2 回答
C
stdio
函数对流而不是文件进行操作 . 就代码而言,流只是字节的消费者(输出流)或 生产环境 者(输入流) .流可以与磁盘上的文件相关联 . 它也可能与终端相关联 . 或打印机 . 或者是网络套接字 . 或者您可能想要与之沟通的任何其他内容 . 流是任何可以读取或写入字节串的东西的抽象 .
stdin
和stdout
(以及stderr
)是预定义的FILE *
对象,通常是指您的控制台,尽管您可以在命令行或代码中覆盖它 .stdin
和stdout
只不过是标准输入和输出文件的指针 . 由于您可以在代码中或使用命令提示符更改这些内容,因此这些内容无法指向实际输入,因为您无法更改它 .stdin
和stdio
只是从standard output
或standard input
读取或写入的文件中获取信息 . 这样,使用命令和代码更改它会容易得多 .