Les semaines précédentes, nous avons vu comment afficher; c’est-à-dire
écrire à l’écran au moyen de cout
. Nous avons occasionnellement vu
comment lire depuis le clavier avec cin
. Nous allons maintenant
formaliser cela et introduire la notion de flux qui nous servira
ensuite pour lire et écrire dans des fichiers.
Notion de flux de données#
Définition
Un flux sortant (input stream) est un dispositif où l’on peut écrire des données, successivement l’une après l’autre.
Syntaxe
flux << expression;
Sémantique
Écrit la valeur de l’expression dans le flux. La valeur est convertie en texte en fonction de son type.
Remarque
On peut enchaîner l’écriture successive de plusieurs expressions :
flux << expression1 << expression2 << expression3;
Exemples de flux sortants
cout
: sortie standard (standard output) du programme
Typiquement : écran
♣ Avec tamponcerr
: sortie d’erreur du programme
♣ Sans tampon
#include <iostream>
using namespace std;
cout << "Noël " << 42 << endl;
Définition
Un flux entrant (output stream) est un dispositif où l’on peut lire des données, successivement l’une après l’autre.
Syntaxe
flux >> variable;
Sémantique
Lit une valeur depuis le flux et l’affecte à la variable. Le type de la variable est utilisé pour déterminer comment lire la variable.
Remarque
On peut enchaîner la lecture successive de plusieurs variables :
flux >> variable1 >> variable2 >> variable3;
Exemple de flux entrant
cin
: entrée standard (standard input) du programme
Typiquement : clavier
string nom;
cout << "Comment t'appelles-tu?" << endl;
cin >> nom;
nom
Astuce mnémotechnique
Le sens des chevrons met en valeur dans quel sens se déplacent les informations :
flux << expression
: de l’expression vers le flux;flux >> variable
: du flux vers la variable.
Astuce mnémotechnique
En anglais, «flux» se dit «stream», «entrée» «input» et «sortie» «output».
D’où le nom de la bibliothèque iostream
qui définit le flux
(stream) entrant (i) cin
et les flux sortants (o) cout
et
cerr
.