c++ - 读取和写入进程 I/O?

标签 c++ linux sockets std

假设我们有两个程序,ABB 连续打印一些东西并读取输入。 (B 中可能有两个进程使用相同的 I/O,我不知道是否可能...)

A 必须读取 B 的输出并决定要对 B 说什么,然后将字符串发送给 B 的输入。 (就像有人通过键盘输入文本到B)。

我知道 B 使用 std::cout 将消息发送到输出并使用 std::cin 读取输入。

如何使用 C++ 和标准库编写 A?这与套接字或ipc有关吗?

注意:我使用的是 i386 Linux 系统。

最佳答案

您可以使用非官方的 boost Process库,它有一个 excellent tutorial正是您想要做的事情,现在任何时候都一定会成为 boost 的官方部分。它也自然是跨平台的。

关于c++ - 读取和写入进程 I/O?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5135779/

相关文章:

c++ - (Qt 5.7.0)如何在toolBar中添加一个水平分隔符

linux - 使用 pthread 的工作队列

linux - 使用 sed、awk 和 xargs 切片 3TB 日志文件?

linux - Apache httpd 与 Tomcat 7 : port 80 vs. 端口 8080

c# - 在原始 Linux 套接字上接收来自任何协议(protocol)的数据包

c++ - 从 int 到 long int 的类型转换

c++ - MIXED_STR_LEN_ARG 与 gfortran

C套接字编程通过同一连接发送多个发送和接收

c++ - 为什么我可以在本地使用 CMake 提供的模块(特别是 CMakeDependentOption.cmake),但不能在 CI 或 Docker 上使用?

c++ - 通过 Berkeley 套接字使用线程通知