【发布时间】:2015-10-15 17:45:02
【问题描述】:
我搜索了很多,但没有找到任何真正满足我需求的解决方案。
我需要分叉的子进程来使用另一个终端的 stdin 和 stdout,而不是在这里调用它的那个我想要做的例子 p>
#include <stdio.h>
#include <unistd.h>
#include <signal.h>
int main()
{
pid_t pid;
printf("process parent pid is %d\n",getpid());
pid =fork();
printf("process child pid is %d\n",pid);
if(pid==0)
{
//int exit_status = system("gnome-terminal");
char a[20];
while(1)
{
scanf(" %s",a);
printf("child %s \n",a);
}
}
while(1)
{
char b[20];
scanf(" %s",b);
printf("parent %s \n",b);
}
}
例如,我需要孩子通过另一个终端与用户交互。
【问题讨论】:
-
看看这个链接,看看是否对你有帮助...stackoverflow.com/questions/15880196/keyboard-device-in-unix
-
您想让您的子进程打开自己的“gnome-terminal”吗?