Avatar ·

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?