Bob Bob - 2 months ago 11
C Question

How to use dprintf()

I've been told that the function dprintf() can be useful in writing data to pipes. Problem is, I can't find any examples that explain how to use it. I've read everything in that link, but still don't quite understand it.

Just a very simple example will help me understand a lot. For instance, if I had a pipe:

int fd[2];
pipe(fd);


and a few pids

pid_t ID1, ID2, ID3;


how could I use dprintf() to write those pids to the pipe?

Answer

dprintf works just like fprintf, except the first parameter is a file descriptor (i.e. an int) instead of a FILE *.

dprintf(fd[0], "%d : %d : %d", ID1, ID2, ID3);
Comments