Bonjour,

J'ai fait un petit programme qui demande à l'utilisateur de deviner un nombre à travers un fork() et un pipe(). Mais mon problème c'est que lors du 1er affichage, le message "Je suis l'enfant, deviner le nombre : " s'affiche une fois et si je n'entre pas le bon nombre il s'affiche 2 fois au lieu d'une par la suite. Voici mon code:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
 
do
{
child_process_id = fork();
 
if(child_process_id == 0)
     {
	  printf("Je suis l'enfant, deviner le nombre : ");
	  fgets(nombre, 20, stdin);
     }
}while (nombre != quitter);
Voici ce que ça affiche (j'entre 14 au clavier la première fois et rien la 2e fois):

Je suis l'enfant, deviner le nombre : 14
Plus petit
Je suis l'enfant, deviner le nombre : Je suis l'enfant, deviner le nombre :

Merci d'avance