Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/156.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用iostream在程序之间进行管道传输?C++_C++ - Fatal编程技术网

如何使用iostream在程序之间进行管道传输?C++

如何使用iostream在程序之间进行管道传输?C++,c++,C++,所以在我的学校作业中,我得到了一个基本的计划。该程序可以在服务器模式和客户端模式下运行 When run in server mode the program takes input from std::cin and outputs to std::cout When run in client mode the program takes input from std::cin and outputs to std::cout 我想用C++代码将它们组合在一起,尽管我也问如何在另一个问题中

所以在我的学校作业中,我得到了一个基本的计划。该程序可以在服务器模式和客户端模式下运行

When run in server mode the program takes input from std::cin and outputs to std::cout
When run in client mode the program takes input from std::cin and outputs to std::cout
我想用C++代码将它们组合在一起,尽管我也问如何在另一个问题

中使用命名管道在Windows中对它们进行管道化。 所以我在想:

std::iostream server_input_client_output, server_output_client_input
start server in a thread Server(server_input_client_output, server_output_client_input)
start client in main thread Client(server_output_client_input, server_input_client_output)
我不想重写整个框架程序,我只想为服务器和客户端提供允许双向实时通信的有效输入


有人知道吗?谢谢。

-在真实的操作系统上,您可以创建管道、分叉,将输入或输出重定向到管道的一端,然后执行新程序。这基本上就是shell创建管道所做的。在窗户上,这更棘手。在旧的CVS repo for PStream中有一个分支具有部分Windows支持,但我不知道它是否有效,我没有编写Windows支持。这只是一个小问题,为什么通过将它与管道一起使用来限制程序。如果只是骨架,那么就做袜子来交流吧。。我不确定你是否有直接交流的理由。忘了提一下,如果你正在使用socks,那么你以后可以扩展你的程序。。。可扩展性方面也更好…因为这是教授要求的。注意这不是一个答案,你需要把它作为一个评论发布。我希望有一个更简单的解决方案,需要更少的工作。但我想我可以抽出一些时间用sockets编写它。老师将来肯定会给我布置这样的作业。谢谢大家的评论。