int main(int argc, const char *argv[])
{
mkfifo("./FtoSfifo",0664);
mkfifo("./StoFfifo",0664);
pid_t cpid = fork();
printf("D\n");
if(0 < cpid)
{
int wrfd = open("./FtoSfifo",O_WRONLY);
int rdfd = open("./StoFfifo",O_RDONLY);
char buf[128] = "";
while(1)
{
bzero(buf,sizeof(buf));
printf("父进程请输入\n");
scanf("%s",buf);
write(wrfd,buf,sizeof(buf));
bzero(buf,sizeof(buf));
read(rdfd,buf,sizeof(buf));
printf("子进程说:%s\n",buf);
}
}
if(0 == cpid)
{
int rdfd = open("./FtoSfifo",O_RDONLY);
int wrfd = open("./StoFfifo",O_WRONLY);
char buf[128] = "";
while(1)
{
bzero(buf,sizeof(buf));
read(rdfd,buf,sizeof(buf));
printf("父进程:%s\n",buf);
bzero(buf,sizeof(buf));
printf("子进程请输入\n");
scanf("%s",buf);
write(wrfd,buf,sizeof(buf));
}
}
return 0;
}
10.03HW
最新推荐文章于 2024-10-06 23:56:27 发布