如何抑制提示并在

时间:2016-11-08 16:43:26

标签: c

我不知道该怎么说。但我有一个C程序将在unix中调用另一个C程序。调用之后,程序(foo-exe)将提示输入“Y / N”。我想抑制(隐藏)此提示消息,然后输入“Y”作为输入。我该怎么做呢?

#include <stdio.h>
int main(int argc, char* argv[])
{
    system("/home/xyz/foo-exe bar");
}

FOO-EXE

// do some other stuff
char ans = 'n';
printf("prompt message. Yes or no? (Y/N) ");
ans=getchar();
if(ans == 'Y') system("foo");

1 个答案:

答案 0 :(得分:1)

如果那是foo-exe期望的全部(Y或N),那么您可以将其stdin重定向到从管道读取。

system("echo Y | /home/xyz/foo-exe bar");

但要注意system()的{​​{3}},并且通常不鼓励使用它。