#include <stdio.h> FILE *popen(const char *program, const char *mode);
This function executes the named program
and attaches either its
input stream or its output stream to the returned file. While the file
is open, the calling program can write to the program (if the program
was open for writing) or read the program's output (if the program was
opened for reading). When the program is done, or if you have no more
input for it, pass the file pointer to pclose
(see section pclose),
which terminates the program.
Since MS-DOS does not support multitasking, this function actually runs
the entire program when the program is opened for reading, and stores
the output in a temporary file. pclose
then removes that file.
Similarly, when you open a program for writing, a temp file holds the
data and pclose
runs the entire program.
The mode is the same as for fopen
(see section fopen).
An open file which can be used to read the program's output or write to the program's input.
not ANSI, POSIX
FILE *p = popen("dir", "r"); read_program(p); pclose(p);
Go to the first, previous, next, last section, table of contents.