C语言重定向

近段时间,又把C primer plus第五版翻了一下,查看以前由于不理解而跳过的地方,现在来看时,结合在其他书上看到的东西(在linux书上看到关于重定向的使用),发现自己居然能够理解了。
Unix、Linux和当前的DOS版本都能够重定向输入和输出。输入重定向可以使程序能够使用文件代替键盘作为输入,输出重定向则使程序能够使用文件代替屏幕作为输出。
一、 输入重定向
输入重定向即用文本文件代替键盘当作程序的输入。 ‘ < ‘ 符号是Unix、Linux和DOS的重定向运算符。该运算把文件和stdin流关联起来,将该文件的内容引导至程序。程序本身并不知道(或关心)输入是来自文件而不是来自键盘。C将文件和I/O设备置于相同的地位,所以现在这个文件就是I/O设备。我们来写个程序感受一下到底是怎么用的。首先编写一个Reput.c文件,代码如下所示。

#include<stdio.h>
int main()
{
    char ch;
    while ((ch = getchar())!= EOF )     //读取输入字符
    {
        putchar(ch);       //输出字符
    }
    putchar('\n');
    return 0;
}

编译程序得到一个.exe可执行文件。DOS下使用cmd打开命令行,进入生成的.exe所在目录。输入命令: Reput.exe < test.txt。如图1所示。 test.txt里的内容如图2所示被印出来。

评论 41
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值