2

我有一个这样的 fscanf 程序:

fscanf(stdin, "%d %d,....

我有很多 fscanf 和我想测试的文件,文件是这样的

10485770 15 51200000 -2 10 10 10485760 10485760 10 10485760 10485760 10 10485760 10485760

好吧,我的问题是如何告诉程序或编译器不要从键盘而是从那些文件中获取输入。这些程序是基准,在我得到输入的文件中,我确信有一种方法可以自动执行此操作,因为在某些情况下有很多输入。先感谢您。

4

3 回答 3

3

尝试自由打开。例如。

freopen( "somefile.txt", "r", stdin );
于 2008-10-14T23:30:19.133 回答
3

从命令行运行时,您可以使用“<”运算符将文件重定向到标准输入。

例如,在 Windows 上:

$ type input_file
10485770 15 51200000 -2 10 10 10485760 10485760 10 10485760 10485760 10 10485760
10485760
$ my_program.exe < input_file

或在 *nix 上:

$ cat input_file
10485770 15 51200000 -2 10 10 10485760 10485760 10 10485760 10485760 10 10485760
10485760
$ ./my_program < input_file
于 2008-10-14T23:31:16.353 回答
-2

查找文件结构。您将希望在此解决方案中使用 FILE 指针。

于 2008-10-14T23:37:36.297 回答