当我输入cargo run时,我希望cmd提示符位于Project_ -〉处,然后等待命令。目前,当我输入cargo run时,它只是位于一个空行处,等待输入。当我输入一些内容并按Enter键时,我的输出是test Project_ -〉test如何让等待命令的行以Project_ -〉开始,然后等待命令?
fn main() {
let mut run = true;
let mut stdin = io::BufReader::new(io::stdin()).lines();
let stdout = io::stdout();
let mut handle = stdout.lock();
while run {
handle.write_all(b"Project_ -> ");
{
let arg = stdin.next().unwrap().unwrap();
println!("{:?}", arg);
if arg == "exit" {
run = false
}
}
删除println!("{:?}", arg);
会导致Project_ -〉根本不打印
反复按Enter键,然后键入exit,打印Project_ -〉,显示我按Enter键的次数。
1条答案
按热度按时间htrmnn0y1#
通过在BufWriter中 Package 句柄并使用.flush()立即打印来修复。