我被告知函数dprintf()在将数据写入管道时非常有用。问题是,我找不到任何解释如何使用它的例子。我已经阅读了该链接中的所有内容,但仍然不太了解它。
一个非常简单的例子将帮助我理解很多。例如,如果我有一个管道:
int fd[2];
pipe(fd);
和几个pid
pid_t ID1, ID2, ID3;
我如何使用dprintf()将这些pid写入管道?
答案 0 :(得分:8)
dprintf
的工作方式与fprintf
类似,但第一个参数是文件描述符(即int
),而不是FILE *
。
dprintf(fd[0], "%d : %d : %d", ID1, ID2, ID3);