Menu
Coddy logo textTech

Lire la saisie utilisateur

Fait partie de la section Fondamentaux du Journey Rust de Coddy. Leçon 30 sur 75.

Jusqu’à présent, nous avons créé des programmes dans lesquels nous écrivons directement les valeurs dans notre code. Mais les vrais programmes doivent souvent interagir avec les utilisateurs et obtenir des informations de leur part.

En Rust, la récupération de données saisies par un utilisateur se fait à l’aide de la bibliothèque std::io. Cette bibliothèque fournit des méthodes pour lire différents types de données saisies, tels que des entiers, des nombres à virgule flottante et des chaînes de caractères.

Pour utiliser la bibliothèque std::io, vous devez d’abord l’importer :

use std::io;

Pour lire une entrée utilisateur, nous avons besoin de deux lignes de code :

let mut my_var = String::new();
// Crée une chaîne vide pour stocker l'entrée

io::stdin().read_line(&mut my_var).unwrap();
 // Lit l'entrée

Cela stockera la valeur saisie dans la variable my_var en tant que type chaîne.

Si vous voulez obtenir un nombre, vous devez effectuer une étape supplémentaire pour convertir l’entrée textuelle en nombre :

let age: i32 = input.trim().parse().unwrap();

.trim() est nécessaire car lorsque les utilisateurs appuient sur Entrée, un caractère de nouvelle ligne est ajouté à leur saisie. Par exemple, si quelqu’un tape "25" et appuie sur Entrée, la saisie réelle est "25\n". .trim() supprime ces caractères d’espacement supplémentaires (espaces, nouvelles lignes, etc.) au début et à la fin de la saisie.

Ne t’inquiète pas trop de unwrap() pour l’instant : nous l’étudierons plus tard. Sache simplement qu’il nous aide à gérer les erreurs potentielles d’une manière simple (bien que pas idéale).

challenge icon

Défi

Débutant

Écrivez un programme qui obtient une entrée de l’utilisateur (son nom), puis affiche Hello, suivi du nom saisi par l’utilisateur et d’un point d’exclamation.

Par exemple, si l’utilisateur saisit Bob, la sortie attendue est Hello, Bob!.

Vous devrez :

  1. Créer un objet String pour lire l’entrée.
  2. Inviter l’utilisateur à saisir son nom : "Enter your name:"
  3. Lire le nom de l’utilisateur à l’aide de la méthode std::io appropriée.
  4. Afficher Hello, suivi du nom stocké et d’un point d’exclamation ! à la fin.

Essayez vous-même

use std::io;

fn main() {
    // Créer un objet String
    let mut name = String::new();
    
    // Demander à l'utilisateur d'entrer son nom (utiliser println)
    
    
    // Lire le nom de l'utilisateur
    
    
    // Afficher le message de salutation
    
}
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Fondamentaux

Entraînez-vous par vous-même : Compilateur Rust en ligne