Rust Program to read the integer from user input with error handling
Program
use std::io;
fn main() {
println!("Enter an integer value:");
let mut integer_value = String::new();
io::stdin()
.read_line(&mut integer_value)
.expect("Failed to read from stdin");
let trimmed = integer_value.trim();
match trimmed.parse::<u32>() {
Ok(i) => println!("User entered value is: {}", i),
Err(..) => println!("Error! user entered value is not an integer: {}", trimmed),
};
}
Output 1
$ rustc ReadPrintIntegerErrorHandling.rs
$ ./ReadPrintIntegerErrorHandling
Enter an integer value:
45
User entered value is: 45
Output 1
$ rustc ReadPrintIntegerErrorHandling.rs
$ ./ReadPrintIntegerErrorHandling
Enter an integer value:
abc
Error! user entered value is not an integer: abc