There is no special tricky things to do this.
On the most system, the pipe ( | ) or redirection ( < ) is the same than the standard IO of your C program.
you just have to remember than the IO is a text line. if you make a program (Ony) witch return the letter "T" or what ever converted to a char by the system ...
and you make a prog (Towy) which take a char and make an operation on it and return a double.
You can type Ony | Towy and it will work.
Ony will write to the standard output "T", this come from the line return "T" or printf("T"

; in your ony.c program.
It will try to write in on the screen but the system catch it with the pipe and send it in Towy
If in Towy you have a sort of getch, witch is suppose to read from the standard input (keyboard), it will receve the "T" from Ony by the pipe. and it will run.
I hope you anderstand me, my english might be not so good.
I hope I answers the question, so I don't think you will find some exemples because programs like ony.c and towy.c won't have some particular things.
It works with the standard IO.
If you want more help, you can be more precise by writing a small exemple.
hope it helps and I didn't miss your question ...
lcout