Bonjour,
je manipule (détourne) le flux d'entrée et de sortie, respectivement stdin et stdout grace aux fonctions freopen
Ex:
freopen(tfile, "rt", stdin) //ouverture en lecture du flux stdin
Comme je le presise dans mon sujet, j'ai deux questions (problèmes) auquels je suis confronté et jusqu'à présent je n'ai pas trouvé de solutions...
Premièrement, j'attends le flux d'entrée via cette boucle:
1 2 3
|
while ( c = (char) getc(stdin) ) < 0
{} |
On sort donc quand y a un caractère "valide"
Le truc c'est qu'une telle boucle prends trop de temps processeur !
Comment puis je la rendre plus économique (Un sleep à l'intérieur)
Ensuite lorsque je ne veux plus detourner le stdin/stdout je fais un fclose sur mon descripteur.
Mais impossible de récuperer la main. Le flux est bloqué...
Comment puis je recuperer la main sur le flux ?
Voilà ce sont mes 2 questions problèmes où je n'ai pas de solutions...
Merci d'avance si vous pouvez m'aider...
Partager