Bonsoir,

J'ai un soucis avec un exo du K&R qui consiste a compter tout bêtement le nombre de caractères saisis par l'utilisateur à l'aide d'un getchar(). En fait le retour chariot est compté après chaque saisie, ce qui fausse donc la donne. Du coup si j'entre 3 caractère (1 par ligne), le résultat final (nc) sera 6 et non 3 !

Je vous montre le code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <stdio.h>
 
main()
{
  // Compte les caractères en entrée
 
  long nc;
 
  nc = 0;
  while (getchar() != EOF)
    ++nc;
 
  printf("%ld caractères(s)\n", nc);
}
C'est normal ou pas ?

Merci.