Bug de flushall( ) en C++

Je suis débutant et dois programmer en C++ à partir d'un code en turbo C. J'ai un petit problème pour l'instruction flushall( ) qui n'existe pas en C++.
J'ai essayé de remplacer par flush (via iostream.h) et fflush ( ) (stdio.h) sans plus de succès. Que faire?
Voici la partie du code posant problème:

// Récupération du choix utilisateur
{
char reponse; // Réponse de l'utilisateur

do
{
pos(colonnechoix + 15, lignechoix);
flushall();
if (mode == WAIT)
reponse = getch ();
else
{
// Vérification de l'état du buffer clavier:
//Si un caracère s'y trouve, on peut le lire, sinon Reponse vaut 255
if (kbhit ())
reponse = getch ();
else
reponse = 255;
}

if ((reponse >= ' ') && (reponse < 255))
printf ("%c", reponse);
if ((reponse >= '2')&&(reponse - '1' <= nbfonctions))
{
selection = reponse - '0';
affichecommandes (nbfonctions, selection, thelength, libeles);
fonctions [reponse - '2'](parametre);
affichegeneral (titre);
affichecommandes (nbfonctions, selection, thelength, libeles);
}
else if ((reponse == '1') || (reponse == '\x1B'))
done = TRUE;
else if (reponse == '\0')
{
reponse = getch ();
if (reponse == uparrow)
{
selection = selection - 1;
if (selection < 1)
selection = nbfonctions + 1;
}
else if (reponse == downarrow)
{
selection = selection + 1;
if (selection > nbfonctions + 1)
selection = 1;
}
}
else if ((reponse == '\n') || (reponse == '\r'))
if (selection > 1)
{
fonctions[selection - 2](parametre);
affichegeneral(titre);
}
else
done = TRUE;

// Mise à jour de l'affichage des variables

if ((!done) & (mode == WAIT))
{
affichecommandes (nbfonctions, selection, thelength, libeles);
affichevariables (nbvariables, legendes, variables);
}
} while ((!done) || (mode == NOWAIT));
}

2 réponses

  • Votes
  • Date
  • Date décroissante
  1. Contributeur
    ca sert à quoi précisément flushall ? Si c'est par exemple pour remettre à zéro ta variable 'reponse' tu n'a qu'à faire une fonction flush qui te met ta rempli ta variable avec '\0'. Par la suite tu test sur le caractère '\0'.

    Je ne c pas si c ca que tu voulais savoir mais bon on sait jamais..

    @+

    Discussions similaires

    "flushall" en langage c ?

    7 réponses