J'ai rencontré un problème lors de l'utilisation de scanf dans un nouveau processus, créé avec fork(). Scanf n'est pas bloqué, donc printf est appelé encore et encore.
Voici un échantillon du code:
Printf appelé avant scanf dans un processus fourchu dans C
int main(int argc,char *argv[])
{
switch(fork()) {
case 0:
while(1) {
char buffer[100];
scanf("%s",buffer);
printf("Input was %s\n",buffer);
}
}
return 0;
}
Quelqu'un sait comment résoudre ce problème simple? (Certaines parties du code sont manquantes, je Shrinked le code à un minimum pour ce problème)
Votre nouveau processus n'a aucune interface, donc scanf ne peut pas scanner. – Joshpbarron
comment est-ce que je peux attacher l'interface à lui? @Joshpbarron –
Pourquoi ne numérisez-vous pas dans le processus père? – Boiethios