【发布时间】:2019-02-28 11:43:40
【问题描述】:
我有一个 C 程序,它应该可以在命令行界面上使用几个参数 - 为此我使用 Cygwin。
我想知道是否可以在获取数据之前将一些提示打印到命令中,例如“给出一个数字:”(程序需要提示几件事)并将最终结果重定向到文件。或者,如果我要重定向到文件,我只需要让自己接受我无法打印任何内容并且所有内容都进入文件的事实?
基本上我想要这样的东西:
printf("Please enter any number:");//prompting for some variable
scanf("%d", &some_variable);
function_printing_its_output();//a nodescript function that at the end uses printf() to get results on screen
现在我想知道是否可以让第一个 printf() 提示出现在命令 lie 中(如果存在,可能使用不同的函数)但是将函数输出放入文件中(我不能直接让它打印到文件, 程序需要使用./program_name some_stuff file1 > file2 格式才能重定向到file2)。
【问题讨论】:
-
您可以使用
fprintf(stderr, "...");将提示转到stderr。 -
如果您在 Windows Visual C 中,您可以使用
cprintf将提示发送到控制台,并使用printf将程序输出发送到stdout。 -
@lurker 谢谢你解决了我的问题。