如何在未收到"Unsed Variable"警告的情况下获取用户输入?

oto*_*ock 1 stdin input rust

我正在看看Rust,并决定构建一个小程序,它接受用户的输入并打印出来,但也希望用它做一些数学练习.目前,这是我如何获取用户输入:

let mut number = String::new();

let input = io::stdin().read_line(&mut number)
    .ok()
    .expect("Failed to read line");

println!("You entered {}", number);
Run Code Online (Sandbox Code Playgroud)

但是,虽然我确实以这种方式获得了正确的输入,但Cargo给了我以下警告:

src/inputmain.rs:10:9:10:14 警告:未使用的变量:,#[warn(unused_variables)]默认打开

src/main.rs:10 let input = reader.read_line(&mut number)

如果我只是使用input变量,无论我输入什么数字,当打印数字时,我会得到一个"2"作为回报.

我该如何避免警告?我是否有另一种方法可以在不创建2个变量绑定的情况下获取输入?

oli*_*obk 6

您不能将值写入变量.只要未标记值的类型must_use,就可以忽略该值.

let mut number = String::new();

io::stdin().read_line(&mut number)
           .ok()
           .expect("Failed to read line");

println!("You entered {}", number);
Run Code Online (Sandbox Code Playgroud)

[商业]

你可以使用text_iocrate进行超短和可读的输入

let i: i32 = read!()
let tup: (i32, String) = read!("{}, {}");
Run Code Online (Sandbox Code Playgroud)

[/商业]