gpt4 book ai didi

两个同时运行的 C 程序的连接

转载 作者:行者123 更新时间:2023-12-04 06:01:36 24 4
gpt4 key购买 nike

我必须知道如何通过在两者之间连接第三个 Java/C 程序来同时连接两个简单运行的 C 程序的输入和输出。

我曾尝试通过管道、套接字和客户端连接,但它对仅使用 scanf() 和 printf() 的简单运行 C 程序没有帮助

示例程序:
程序1.c

#include<stdio.h>
int main(int argc,char *argv[])
{
int a;
while(1)
{
scanf("%d",&a);
printf("%d",a);
}
return 0;
}

程序2.c
#include<stdio.h>
int main(int argc,char *argv[])
{
int a;
while(1)
{
scanf("%d",&a);
printf("%d",a);
}
return 0;
}

我的目标是在第三个 Java 或 C 程序的帮助下将 program1.c 的 stdin 和 stdout 与 program2.c 的 stdin 和 stdout 连接起来

最佳答案

本质上,你会想要做这样的事情:

  • “Program3”创建一个 pipe
  • 程序 3 调用 fork ,并在 child 中更改 pipe的 FD stdout ,然后 exec的程序2;
  • 然后程序 3 更改了 pipestdin , 和 exec的节目1
  • 关于两个同时运行的 C 程序的连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8855853/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com