| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 
 |  
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
 
void fclean (char *s_buffer, FILE * stream)
{
   if (s_buffer != NULL && stream != NULL)
   {
      char *pc = strchr (s_buffer, '\n');
 
      if (pc != NULL)           /* La saisie n'a pas été tronquée */
      {
         /* On remplace '\n' par le caractère nul '\0' */
         *pc = 0;
      }
      else
      {
         /* La saisie a été tronquée, on purge le flux d'entrée */
         int c;
         while ((c = fgetc (stream)) != '\n' && c != EOF)
         {
            continue;
         }
      }
   }
}
 
void pause (const char *s_message)
{
   if (s_message != NULL && strlen (s_message) != 0)
   {
      fprintf (stdout, "%s", s_message);
      fflush (stdout);          //If I write stdout, s_message is not visible !
   }
   {
      char c[2];
      fgets (c, sizeof c, stdin);
      fclean (c, stdin);
   }
}
 
int main (void)
{
   pause (NULL);
   pause ("");
   pause ("Appuyer sur une touche pour continuer");
   return 0;
} |