2017-09-04 8 views
0

je l'ai lu quelque part que while(fgets(line, sizeof(line), stdin) != NULL) devrait lire l'entrée standard jusqu'à ce que vous appuyez sur Ctrl + D qui représente EOF et génère NULL, mais mon programme continue à aller même si je presse Ctrl + D, quelqu'un a des idées? tout est apprécié.C - lire stdin jusqu'à ce que ctrl + d ne fonctionne pas

+1

fenêtres? utilisez CTRL + Z alors. –

Répondre

1

Ctrl + D est pas défini comme EOF dans la spécification du langage C. Ctrl + D est défini au niveau du système d'exploitation. Par conséquent, vous devez être sur un système sur lequel Ctrl + D n'a pas le comportement que vous attendez.

+0

merci! J'ai essayé sur Linux au lieu de Windows et maintenant ça fonctionne comme il se doit! L'informatique était censée fonctionner sous Linux, alors c'est ce qui compte de toute façon! – Frans