C ++清除输入缓冲区

时间:2015-05-04 03:35:49

标签: c++ visual-studio-2010 input buffer getch

截至目前,我正在制作一个使用退出键退出的不同屏幕的程序,但是如果我按下escape键会发生什么,让我们说选项菜单。然后我进入游戏,游戏允许逃脱退出,它会自动离开游戏。如果这是有道理的。 :),但是,似乎转义键在输入缓冲区中浮动,我尝试了很多方法来清除它,但我找不到方法。这是我的代码的一部分。

int Controls()
{
    // Allows us to get a key when pressed
    int Key;
    Key = _getch();

    switch(Key)
    {
    // Number 27
    case KEY_ESCAPE:
        do code...
        break;

    }
    return Key;
}

1 个答案:

答案 0 :(得分:0)

尝试做

fflush(stdin);

每当您转换到任何新页面时。它清除输入流。