• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

C-Code einbinden

Hallo,

vielleicht kann mir jemand weiterhelfen. Bin noch etwas ein Linux-"Greenhorn", muss aber schon eine relativ schwere Aufgabe lösen.
Ich soll ein C-Programm schreiben ( dies hab ich noch einigermaßen hingekriegt, siehe unten ) dem beim Aufruf der Name eines anderen Programm als Kommandozeileninterpreter mitgegeben wurde ( z.b. "c-code" xclock ). Der c-Code soll dieses Programm als neuen Prozess starten.

c-Code:

#include <stdlib.h>
#include <stdio.h>
#include <pthread.h>
#include <unistd.h>
#include <signal.h>
#include <sys/wait.h>

int stop=0;
void out ()
{stop=1;}

int main (int argc,char *argv[])
{
signal ( 1, out );
if (argc<=1)
{ printf (�Error, Parameter fehlt �);
exit(1);
}
while (stop!=1)
{
pid_t pid=fork()
if (pid==-1)
{
printf((�error bei fork()�);
exit(1);
}
else if (pid==0)
{
execlp(argv[1],argv[1],NULL);
}
else {
printf((�Beenden Kinderprozess�);
if(waitpid(pid,NULL,O)==pid)
}
return 0;
}

Wenn kein Programm mitgegeben wurde, soll HIlfe ausgegeben werden, wenn der Kindprozess beendet ist, soll der c-Code sofort eine neue Instanz des Prozesses starten.

Wie kann ich dieses C-Programm jetzt mit z.b. der bash über das Terminal verbinden ?

Tausend Dank und LG

Jessica
 
A

Anonymous

Gast
jessica12345 schrieb:
Wie kann ich dieses C-Programm jetzt mit z.b. der bash über das Terminal verbinden ?

Die Antwort ist ganz einfach, gar nicht, ;) denn es ist so voller Syntaxfehler das es nicht kompilierbar ist. Unter anderem würde es dir helfen wenn du das Programm sauber formatierst, dann würdest du auch sehen wo deine Klammern und Schleifen anfangen und wo sie enden. Nützlich ist auch ein Editor mit Syntax Highlighting da sieht man auch ein paar deiner Fehler schneller.

Ansonsten verstehe ich nicht ganz was du willst, das Programm soweit verbessern das es funktioniert und dann kompilieren und mit den das daraus entstehende Binärprogramm mit den Optionen starten und fertig.

robi
 
Oben