您的位置:首页 > 其它

用文件代替键盘和屏幕作为输入和输出

2014-03-16 17:31 162 查看
简介

       C程序将输入视为一个外来字节的流。许多操作系统都提供重定向,这就使我们能够用文件代替键盘作为输入,或用文件代替显示器作为输出。以下,笔者以自己的Win7操作系统为例进行讲解。

       (本文参考资料  :《C Primer Plus》(第五版)第八章-字符输入/输出和输入确认。)

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

准备

       随便找个地方新建一个文件夹,作为工作空间。比如在桌面建立“重定向”,在文件夹内写一个add.c程序,代码如下。

#include <stdio.h>

int main()
{
int a, b;
while (scanf("%d%d", &a, &b) != EOF)
printf("%d\n", a+b);
return 0;
}


       将上述代码编译,生成可执行文件add.exe后即可,然后再新建一个输入数据文件"input.txt",内容如下:



- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

基础:打开cmd命令行程序

      用[Shift+鼠标右键]的方法,在弹出的菜单中选择“在此处打开命令行窗口”。(关键是要确保add.exe、input.txt文件和cmd窗口在同一路径中)





- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

操作方法
       此时,直接打上add(PS:cmd不区分大小写,事实上,win7的文件都不区分大小写),然后回车,就代表执行add.exe程序。我们可以通过输入数据,让程序进行运算,效果如下:(每两行中的第二行——3,7,11,是按下回车键后的输出值)



       因为我们的程序是识别到EOF才结束,所以必须在cmd中按[Ctrl + C] 的方式结束add.exe程序,效果如下:



       现在,我们用input.txt文件代替键盘输入,只要在执行add时,用“<”符号,右边写上相应文件名即可:



       运行后,程序直接输出了三个结果。这就是用文件代替键盘输入的方法。如果要用文件来存储输出结果,则用“>”符号,右边写上文件名:



       上述两步可以合并操作,且 < input.txt和 > output.txt的顺序没有影响:



       另外,如果把“>”改为">>",则代表在指定文件的末尾继续添加数据,效果如下:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐