Cómo convertir una cadena (String o &str) a número (int) en Rust
¡Hola a todos! Acabo de empezar a aprender Rust, viniendo de Python, y me encontré con un problema que me dejó perplejo. Necesito leer un número desde la entrada estándar o desde un archivo de texto y realizar operaciones aritméticas con él.
En Python se hace en una línea: `number = int(input())`. Pero en Rust obtengo errores de compilación.
Aquí está mi código que no funciona:
```rust
use std::io;
fn main() {
let mut input = String::new();
io::stdin().read_line(&mut input)
.expect("No se pudo leer la línea");
let number: i32 = input; // ¡Error! Tipo no coincide
println!("Número ingresado: {}", number + 10);
}
```
El compilador da el error: `expected i32, found struct String`. Entiendo que `read_line` devuelve una cadena, no un número. Pero, ¿cómo la convierto?
Intenté usar `parse()`, pero obtengo otro error: `error[E0282]: type annotations needed`. ¿Alguien puede explicar la forma correcta de convertir una cadena a un número entero?