Como converter uma string (String ou &str) em número (int) em Rust?
Olá a todos! Comecei a aprender Rust recentemente, vindo do Python, e me deparei com um problema que me deixou perplexo. Preciso ler um número da entrada padrão ou de um arquivo de texto e realizar operações aritméticas com ele.
Em Python, isso é feito em uma linha: `number = int(input())`. Mas em Rust, recebo erros de compilação.
Aqui está meu código que não funciona:
```rust
use std::io;
fn main() {
let mut input = String::new();
io::stdin().read_line(&mut input)
.expect("Não foi possível ler a linha");
let number: i32 = input; // Erro! Incompatibilidade de tipos
println!("Número inserido: {}", number + 10);
}
```
O compilador emite o erro: `expected i32, found struct String`. Eu entendo que `read_line` retorna uma string, não um número. Mas como faço para convertê-la?
Tentei usar `parse()`, mas recebo outro erro: `error[E0282]: type annotations needed`. Alguém pode explicar a maneira correta de converter uma string em um número inteiro?