日期:2014-05-16  浏览次数:21143 次

关于scanf无法阻塞等待用户输入
A进程 execv B进程

B进程有如下代码段:

while(1)
{
printf("aaaa")
scanf();
}

结果终端不断打印aaaa
B程序没有等待用户输入

------解决方案--------------------
不应该啊!除非你的stdin被重定向了。另外你确定aaaa是进程B打出来的?
------解决方案--------------------
单独执行B进程有什么表现?
------解决方案--------------------
父进程是否输入了一些什么字符,还没有读走?