c - 在 C 中使用管道在进程之间发送浮点值

标签 c ipc fork

在 C 中,是否有一种标准方法可以将浮点值从子进程发送到父进程。

我有一些计算,我想 fork 一个进程,然后让 child 做一些忙碌的工作, parent 做其他事情,然后 child 将它的值( double 值)发送回 parent (大概是通过管道)。显然父级可以解析流,但我只是想知道是否有更简洁的方法?

最佳答案

如果您只是在同一台机器上的两个进程之间发送它们,则无需花哨。在发送端:

double my_float;
write(fd, &my_float, sizeof(myfloat));

在接收方:

double my_float;
read(fd, &my_float, sizeof(my_float));

当然你应该检查writeread的返回值。

关于c - 在 C 中使用管道在进程之间发送浮点值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10988438/

相关文章:

c - 从文件中读取二进制数并将其保存为整数

c - 错误返回不兼容指针不兼容 C

C IPC - 无法从队列接收消息

linux - 堆内存何时为进程分开? exec 系统调用中发生了什么?

c 将 int 赋值给 0xFFFFFFFF,但得到 0

c - 为非常大的文件做准备

c++ - IPC 共享内存与 posix 共享内存

c++ - OS X 和 Linux (C/C++) 之间的差异

c - 将 exec 输出重定向到缓冲区或文件

c++ - fork在递归函数中的使用