防止将行打印到命令行管道到文件

时间:2016-02-05 14:10:18

标签: c command-line

标题可能有点令人困惑..所以这是我试图解释它:

我有一个命令用于我的程序:

c file1.txt > file2.txt

命令行中的此命令获取第一个文件并将程序的输出(即打印的)输出到第二个文件。

所以即时扫描用户信息:

printf("Enter a message:");
char *message = malloc(sizeof(char) * 256);
scanf("%s", message);
printf("Your message is: %s", message);

但是这会将printf(...)个语句打印到我的管道文件中,而我只想要第二个。我该如何防止这种情况?

谢谢!

1 个答案:

答案 0 :(得分:2)

一种方法是使用stderr来获取您不想复制到输出文件的信息:

fprintf(stderr, "Enter a message:");