Section courante

A propos

Section administrative du site

println

Imprime et saut de ligne
Rust

Syntaxe

macro_rules! println {
   () => { ... };
   ($($arg:tt)*) => { ... };
}

Description

Cette macro permet d'afficher une ligne formatée vers la sortie standard, avec un saut de ligne automatique à la fin.

Remarques

Affiche sur la sortie standard, avec un saut de ligne.

Sur toutes les plateformes, le saut de ligne est le caractère LINE FEED (\n/U+000A) seul (sans CARRIAGE RETURN (\r/U+000D) supplémentaire).

Cette macro utilise la même syntaxe que format!, mais écrit sur la sortie standard.

La macro println! verrouille la sortie standard à chaque appel. Si vous appelez println! dans une boucle active, ce comportement peut constituer un goulot d'étranglement. Pour éviter cela, verrouillez la sortie standard avec io::stdout().lock() :

  1. use std::io::{stdout, Write};
  2.  
  3. let mut lock = stdout().lock();
  4. writeln!(lock, "bonjour").unwrap();

Utilisez println! uniquement pour la sortie principale de votre programme. Utilisez plutôt eprintln! pour afficher les messages d'erreur et de progression.

Paniques

Panique en cas d'échec de l'écriture sur io::stdout.

L'écriture sur une sortie standard non bloquante peut provoquer une erreur, ce qui entraînera un blocage de cette macro.

Exemples

  1. println!(); // affiche juste une nouvelle ligne
  2. println!("bonjour!");
  3. println!("format {} paramètres", "quelques");
  4. let local_variable = "quelques";
  5. println!("format {local_variable} paramètres");    


Dernière mise à jour : Mardi, le 5 Août 2025