Explication et correction de ce programme

Signaler
Messages postés
6
Date d'inscription
lundi 11 décembre 2000
Statut
Membre
Dernière intervention
22 mai 2008
-
Messages postés
1054
Date d'inscription
samedi 2 octobre 2004
Statut
Membre
Dernière intervention
9 juillet 2013
-
Bonjour, est ce que quelqu'un peut m'aider à expliquer et corriger ce programme svp?

#include <stdio.h>
#include

int main(int argc, char *argv[]) {
int mon_tube;
pid_t pid_fils;
char buf;

pipe(mon_tube);

fork(&pid_fils);
if (pid_fils) {
while(read(mon_tube[0], &buf , 1)>0) {
write(STDOUT_FILENO, &buf, 1);
}
}
else {
write(mon_tube[1], ”je suis ton fils ! \ n”, 19);
}
return 0;
}

4 réponses


Donc tu ne l'as pas fait toi meme, tu connais la syntaxe des tubes et des fork ? du moins ton cours sur les tubes et les forks ?

When the rich wage war, it's the poor who die.
Messages postés
1054
Date d'inscription
samedi 2 octobre 2004
Statut
Membre
Dernière intervention
9 juillet 2013
6
Peux tu m'expliquer pourquoi bounkolh, tu reposes exactement la meme question que TON precedent post mais cette fois ci tu ajoutes des erreurs dans ton programme!!!
Mes explications n'etaient pas assez clair?

http://www.cppfrance.com/infomsg_EXPLICATION-PROGRAMME_1135671.aspx#2

Mon site internet : http://pistol.petesampras.free.fr
Messages postés
6
Date d'inscription
lundi 11 décembre 2000
Statut
Membre
Dernière intervention
22 mai 2008

Excuse Pistol_Pete pour la confusion mais ce sont deux programmes différents; tes explications étaient hyper clairs et c sympa de ta part; en fait j'ai poster les deux questions presque en même temps et il n'y a aucun lien entre les deux; je ne suis pas un expert de ce code mais juste quelqu'un qui essaye de mieux comprendre et surtout comparer ses réponses (au mêmes questions) à d'autres.
Peux tu me dire les erreurs que tu as trouver sur le prog2 et quel en st les corrections?
Merci encore une fois
B.
Messages postés
1054
Date d'inscription
samedi 2 octobre 2004
Statut
Membre
Dernière intervention
9 juillet 2013
6
Ha bon c'est 2 codes differents. Pas pour moi.
Ce bout de code fait exactement la meme chose que le precedent sauf qu'il n'ecrit pas la meme information dans le pipe.

L'erreur vient du fait qu'il faut tester le retour du fork et non le pid_id

A+
Mon site internet : http://pistol.petesampras.free.fr