stdinから入力を読み取るとString
、が生成されますが、整数に変換するにはどうすればよいですか?
use std::io;
fn main() {
println!("Type something");
let mut input = String::new();
io::stdin()
.read_line(&mut input)
.expect("Failed to read line");
println!("{}", input);
}
使用parse
:
use std::io;
fn main() {
println!("Type something");
let mut line = String::new();
io::stdin()
.read_line(&mut line)
.expect("Failed to read line");
let input: u32 = line
.trim()
.parse()
.expect("Wanted a number");
println!("{}", input);
}
文字列からの数値の解析は失敗する可能性があるため、aResult
が返されることに注意してください。この例では、を使用して失敗した場合にパニックになりexpect
ます。
さらに、read_line
改行を押さEnterないようにするため、trim
解析する前にそれを無視するために使用されます。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加