【发布时间】:2019-03-13 13:34:21
【问题描述】:
我想将一个文本文件传递给像 ./program < text.txt 这样的 C 程序。我在 SO 上发现这样传递的参数不会出现在 argv[] 中,而是出现在 stdin 中。如何在标准输入中打开文件并阅读?
【问题讨论】:
-
@LiranFunaro - 他们要求 C - 你的链接是关于 C++ 的。 C 不做
cin和cout。对于 C,请尝试阅读类似本教程的内容(我不知道它有多好 - 但如果不是您需要的,您当然可以谷歌其他人如何使用stdin)。 cs.bu.edu/teaching/c/file-io/intro -
你已经打开了这个文件,
#inlude <stdio.h>和fread(buff, size, 1, stdin); -
你没有打开任何东西(你的shell做了输入重定向),你只是从
stdin读取通常的方式-fgets(),getchar(),scanf(),不管. -
文件未“通过标准输入”。文件是标准输入。