Warum nicht exec*()? Damit bekommt man die Ausgaben hübsch in ein array geschrieben wieder, welches als Zeiger an die Funktion übergeben wird.
Ich weiß jetzt nicht ob es unter Linux gcc genauso ist wie mit dem MingW oder DJGPP, aber kannst Dir mal die Manpages zu exec ansehen:
Code:
#include <unistd.h>
int execl(const char *path, const char *argv0, ...);
int execle(const char *path, const char *argv0, ...
/*, char *const envp[] */);
int execlp(const char *path, const char *argv0, ...);
int execlpe(const char *path, const char *argv0, ...
/*, char *const envp[] */);
int execv(const char *path, char *const argv[]);
int execve(const char *path, char *const argv[], char *const envp[]);
int execvp(const char *path, char *const argv[]);
int execvpe(const char *path, char *const argv[], char *const envp[]);
Lesezeichen