845fea2fed25fec2c8797a7a44fb1f141d1afed4
1 #include <sys/types.h> // pour les types
2 #include <unistd.h> // pour fork, pipe, read, write, close
3 #include <stdio.h> // pour printf
12 pipe(fd
); // création d'un tube anonyme
13 char message
[100]; // pour récupérer un message
15 char *phrase
= "message envoyé au père par le fils";
16 if (fork() == 0) //création d'un processus fils
18 close(fd
[R
]); //Le fils ferme le descripteur non utilisé de lecture
19 // dépôt dans le tube du message
20 write(fd
[W
], phrase
, strlen(phrase
) + 1);
21 close(fd
[W
]); // fermeture du descripteur d'écriture
24 // Le père ferme le descripteur non utilisé d'écriture
26 // extraction du message du tube
27 nboctets
= read(fd
[R
], message
, 100);
28 printf("Lecture %zd octets : %s\n", nboctets
, message
);
29 // fermeture du descripteur de lecture