C中的简单管道说明?

时间:2013-01-15 14:49:49

标签: c pipe output

我需要管道3个程序:AddWith5.c AddWith2.c MultiplyWith3.c

我的代码遵循以下模式:

int main(){
    int x;
    scanf("%i",&x);
    printf("%i",x*3);
    return 0;
}

我需要管道它们以便我得到输出:((x + 5)+2)* 3

(f1.txt包含数字2)

有人可以帮助我吗?

我试过了:AddWith5.c | AddWith2.c | MultiplyWith3.c < f1.txt > f2.txt

提前谢谢!

1 个答案:

答案 0 :(得分:1)

管道从左向右读取,因此必须将输入提供给&#34; head&#34;管道中最左边的程序:

$ AddWith5 < f1.txt | AddWith2 | MultiplyWith3

此外,您不能直接调用C文件,首先需要将每个文件单独编译为具有上述名称的二进制文件。

顺便说一下,这与C无关。程序也可以是shell脚本,或者用其他任何编程语言编写,在这个级别上并不重要。

相关问题