从键盘获取Y / N响应

时间:2014-04-03 11:03:41

标签: rust

我想请用户回答Y或N的问题。基本上,我不知道我在做什么,但不管怎样,这是我的尝试

fn ask_confirm(question: &str) -> bool {
    println!("{}",question);
    loop {
        match std::io::stdin().read_u8().map(|x| x as char) {
            Ok('y') | Ok('Y') => return true,
            Ok('n') | Ok('N') => return false,
            Ok(_) => println!("y/n only please."),
            Err(e) => ()
        }
    }
}

这会导致无限循环。 Err(e)读取"未知错误(OS错误8(FormatMessageW()返回错误15105))"在Win 7上。输入无论如何都不被识别。

0 个答案:

没有答案