【发布时间】:2016-05-01 19:55:02
【问题描述】:
我在一些基本的 I/O 方面遇到了一些问题。具体来说,文本“请输入您的姓名”会写入输出在我输入我的姓名并点击Enter:
use std::io;
fn main() {
print!("Please enter your name: ");
let mut name = String::new();
match io::stdin().read_line(&mut name) {
Ok(_) => println!(""),
Err(err) => println!("Could not parse input: {}", err)
}
println!("Hello, {}!", name.trim());
}
给出以下输出:
Compiling chat v0.1.0 (file:///home/marcus/dev/rust/chat)
Running `target/debug/chat`
marcus
Please enter your name:
Hello, marcus!
我输入第一个“marcus”的地方。为什么程序在等待输入之前不打印“请输入您的姓名”?
如果返回的Result 是Ok,是否可以“什么都不做”?在示例中,Ok() 表示我已将输入保存在变量名中。那太棒了。但是在这种情况下我该怎么处理Ok() =>?
【问题讨论】:
标签: rust