我有一个像这样的fscanf程序:
fscanf(stdin,“%d%d,....
我有很多fscanf和我想测试的文件,文件都是这样的
10485770 15 51200000 -2 10 10 10485760 10485760 10 10485760 10485760 10 10485760 10485760
我的问题是我如何告诉程序或编译器不是从键盘输入,而是从这些文件中获取输入。这些程序是基准测试,在我得到输入的文件中,我确信有一种方法可以自动执行此操作,因为在某些情况下有很多输入。提前谢谢。
答案 0 :(得分:3)
试试freopen。例如
freopen( "somefile.txt", "r", stdin );
答案 1 :(得分: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
答案 2 :(得分:-2)
查找FILE结构。你会想要为这个解决方案使用FILE指针。