c程序运行避免每次都要重新输入值

假设有一个c程序实现的是读入一个字符然后输出

scanf("%c", &cha);
printf(%c", cha);

这样运行的时候每次都要输入一个字符才行,我想实现的是将这个字符固定在一个文件中,这样每次就不用重复的输入了,前提是不改变上面两行代码。

阅读 1.9k
2 个回答

改变输入输出流:

include <stdio.h>  

int main(){

freopen("in.txt","r", stdin);

freopen("out.txt","w", stdout);
  / 中间按原样写代码,什么都不用修改 /  

fclose(stdin);
fclose(stdout);
return0;

}

使用输入管道 | 可解决此问题。

以 linux 系统为例,可以这样

echo -n <要输入的字符> | <要运行的程序>
# 比如
echo -n hi | cat -
# 从文件读取字符
cat <文件名> | <要运行的程序>
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进