#1 Le 25/09/2017, à 13:22
- plouf1221
flot de t'exte comment simuler un EOF [RESOLU]
Bonjour,
Voici le programme basique en C que je trouve dans le livre de Kerningan et Ritchie :
1 // Bibliothéques standart :
2 //====================================================================================
3 #include<stdio.h>
4 #include<stdlib.h>
5 //====================================================================================
6
7
8
9 // Le main
0 //====================================================================================
1 int main (void)
2 {
3 int c;
4 while ((c == getchar ()) != EOF)
5 putchar (c);
6
7 return EXIT_SUCCESS;
8 }
9 //====================================================================================
Lorsque j’exécute ce programme je tape des caractères dans mon clavier jusqu’à ce que je tape un EOF.
Pour "simuler" un EOF j’appuie simultanément sur les touches [contrôle]+[maj]+[d] que l'on peut écrire également ^D.
J'ai essayer également cette combinaison [contrôle]+[d].
Cependant je continu à rester dans ma boucle sans en sortir et j'ai de nouveau la main libre pour taper d'autres caractères.
Ma question est donc comment simuler un EOF au clavier ?
Dernière modification par plouf1221 (Le 25/09/2017, à 13:57)
Hors ligne
#2 Le 25/09/2017, à 13:33
- grim7reaper
Re : flot de t'exte comment simuler un EOF [RESOLU]
Salut,
Le problème ne vient pas de la simulation d’EOF au clavier (qui se fait via Ctrl+d en effet).
L’erreur est dans la condition du while.
Il faut écrire
while ((c = getchar ()) != EOF)
Dans ta version, tu as utilisé == (comparaison) au lieu de = (affectation).
Hors ligne
#3 Le 25/09/2017, à 13:56
- plouf1221
Re : flot de t'exte comment simuler un EOF [RESOLU]
Ok merci et bonne journée !
Hors ligne