Warum läuft printf before exevp nicht?
Ich erhalte eine Ausgabe von "hi!". Warum druckt das nicht auch "etwas"?
#include <stdio.h>
#include <unistd.h>
int main(int argc, char** argv) {
char* program_name = "echo";
char* args[]= {program_name,"hi!",NULL};
printf("something");
execvp(program_name,args);
return 0;
}
Ich weiß, dass ich nicht zuerst einen untergeordneten Prozess erstelle. Wenn ich die execvp-Zeile herausnehme, funktioniert es wie erwartet. Seltsam. (Hinweis: "Echo" bezieht sich aufhttps: //en.wikipedia.org/wiki/Echo_ (Befehl))