C 关于K&R的问题-重定向输入
在“C编程语言”K&R的第1.6节中,有一个示例程序,作者声明:C 关于K&R的问题-重定向输入,c,C,在“C编程语言”K&R的第1.6节中,有一个示例程序,作者声明: The output of this program ON ITSELF is digits = 9 3 0 0 0 0 0 0 0 1, white space = 123, other = 345 还有很多类似的项目,包括练习。我了解所有关于代码逻辑的内容,并且可以做这些练习,但是我如何在一个文件上测试我的程序,比如作者或网络上的许多其他人 编辑:问题应该是:如何将文件输入重定向到程序?这是使用重定向。程序的输入不是
The output of this program ON ITSELF is
digits = 9 3 0 0 0 0 0 0 0 1, white space = 123, other = 345
还有很多类似的项目,包括练习。我了解所有关于代码逻辑的内容,并且可以做这些练习,但是我如何在一个文件上测试我的程序,比如作者或网络上的许多其他人
编辑:问题应该是:如何将文件输入重定向到程序?这是使用重定向。程序的输入不是来自键盘,而是来自文件 在DOS提示下:- C:>myexe
在Mac电脑上,这被称为终端类型终端进入探照灯以到达它。这是使用重新定向。程序的输入不是来自键盘,而是来自文件 在DOS提示下:- C:>myexe
在Mac上,这被称为终端类型终端进入探照灯以到达它。第1.6章中的程序从stdin读取输入。要使其从文件中读取,您可以在大多数操作系统上通过如下方式运行程序将stdin重定向为文件:
myprogram < somefile
./a.out < test_input
在windows上,您将使用type程序而不是cat
第1.6章中的程序从stdin读取输入。要使其从文件中读取,您可以在大多数操作系统上通过如下方式运行程序将stdin重定向为文件:
myprogram < somefile
./a.out < test_input
在windows上,您将使用type程序而不是cat
默认情况下,您的程序将从stdin获取输入,默认情况下,stdin是一个基于键盘输入填充的缓冲区。但是,您也可以告诉您的程序从文本文件中填充stdin 使用基于*nix的系统,您只需创建一个文本文件,并将其保存为您想要的任何内容,例如测试输入。用您希望传递给程序的输入填充它,保存它,然后按如下方式运行程序:
myprogram < somefile
./a.out < test_input
您可以使用ofstream输出到文件
注意,IFS流和OFFROW是C++对象,不能在C中使用。虽然可以在C中写入文件并从文件中读取,但这比简单地替换CUT和CIN的所有实例稍微复杂一些。实际上,您必须考虑您正在读和写什么:
默认情况下,您的程序将从stdin获取输入,默认情况下,它是一个基于键盘输入填充的缓冲区。但是,您也可以告诉您的程序从文本文件中填充stdin 使用基于*nix的系统,您只需创建一个文本文件,并将其保存为您想要的任何内容,例如测试输入。用您希望传递给程序的输入填充它,保存它,然后按如下方式运行程序:myprogram < somefile
./a.out < test_input
您可以使用ofstream输出到文件
注意,IFS流和OFFROW是C++对象,不能在C中使用。虽然可以在C中写入文件并从文件中读取,但这比简单地替换CUT和CIN的所有实例稍微复杂一些。实际上,你必须思考你在读什么和写什么:
我不知道你在问什么。你是在问如何编译和运行一个C程序吗?这对你有什么意义吗?本书假设您正在CLI中工作。在GUI中工作会带来更多的挑战,与C语言无关。您可能希望将系统设置为易于在CLI环境中工作。所示示例使用getchar从输入中读取字符,执行一些操作,然后使用putchar打印字符。作者说他使用了一个实际的文件,从中他得到了字符,并采取了明确的行动。我也在问我怎么做,因为我不知道怎么做。我认为这与操作系统有关,而不是C语言。这是重定向而不是争论。我不知道你在问什么。你是在问如何编译和运行一个C程序吗?这对你有什么意义吗?本书假设您正在CLI中工作。在GUI中工作会带来更多的挑战,与C语言无关。您可能希望将系统设置为易于在CLI环境中工作。所示示例使用getchar从输入中读取字符,执行一些操作,然后使用putchar打印字符。作者说他使用了一个实际的文件,从中他得到了字符,并采取了明确的行动。我也在问我怎么做,因为我不知道怎么做。我认为这与操作系统有关,而不是C语言。这是重定向,而不是参数汉克斯我的程序