K&R 练习 1-14,文件中的标准输入

K&R Exercise 1-14, stdin from the file

好吧,我正在动手 c 并根据同事的推荐选择了 "The C Programming Language"。到目前为止我在第 1 章,所以这是一个非常菜鸟的问题。通常这也是我完成的其他练习的问题。

我正在检查我在 1-14 上的解决方案 source。在程序列表下方,我看到了以下注释:

Here's the output of the program when given its own source as input:

我只能执行编译练习并手动输入文本并使用 Ctrl + D 模拟 EOF。使用来自任意文件(例如源)的输入数据并使其按照作者建议工作的方法是什么。我假设它不是 copy/paste,至少不是手动的。

我试过 cat ./histogram.c > ./histogram 但这没有用。

What I've tried is cat ./histogram.c > ./histogram but this did not work.

> 将输出重定向到一个文件 | 将它重定向到另一个程序,所以你需要 cat ./histogram.c | ./histogram

或者(如 Marc 上面的回答)您可以使用 < 从文件中读入程序。 ./histogram < ./histogram.c

编辑:是的,我知道这确实是一个关于 OS 的问题,或者更确切地说是 shell,而不是 'C',但是告诉一个明显的初学者离开 [=26] =] 不是很有帮助,也不能使 互联网变得更好