【发布时间】:2012-01-09 15:04:44
【问题描述】:
我尝试 fork() 一个将运行ls 命令的孩子。
#include <stdio.h>
#include <sys/types.h>
#include <unistd.h>
#include <stdlib.h>
int main() {
if (fork()==0){ //child
execlp("ls", "ls", "-l", (char*)0);
exit(1);
}
fflush(stderr); //doesn't fix my problem
fflush(stdout); //doesn't fix my problem
exit(0);
}
这工作正常,但光标在孩子执行后卡住了。我必须按回车键才能取回终端。这是为什么呢?
【问题讨论】: