Précédent Index Suivant

Annexe A   Format des entrées-sorties

Ce chapitre, dû à Philippe Dosch [1] que je remercie une fois de plus, donne quelques précisions supplémentaires sur les entrées-sorties en C++.

A.1   La classe ios

La classe ios est la classe de base des classes représentant les flots. Toutes les classes de flot présentées ci-dessous héritent donc de cette classe et des méthodes qu'elle définit (non exhaustif) : La classe ios définit aussi un certain nombre de méthodes relatives au format des informations manipulées (non exhaustif). Voici un exemple d'utilisation :
#include <iostream>

int main()
{
  cout << "Largeur standard : "
       << cout.width() << endl;     // Affiche : 0

  cout.width(10);
  cout.fill('#');
  
  cout << 654 << endl;              // Affiche : #######654
}
Enfin, cette classe définit un certain nombre d'opérations qui peuvent être utilisées sans les préfixer du flot sur lequel on travaille, et autorise ainsi l'écriture de lignes du type :
cout << "La valeur octale de 154 est : " << oct << 154 << endl;
Parmi ces opérations, on trouve :

A.2   La classe ostream

Cette classe est dédiée aux sorties formatées ou non. Un objet de type ostream est défini par défaut dans tout programme C++ : c'est la variable cout. La classe ostream surcharge l'opérateur << pour tous les types prédéfinis du C++. Il faut, si besoin est, le surcharger pour les nouveaux types introduits (cf. § 3.9). En plus de l'opérateur <<, la classe ostream est dotée des méthodes suivantes (non exhaustif) :

A.3   La classe istream

Cette classe est dédiée aux entrées formatées ou non. Un objet de type istream est défini par défaut dans tout programme C++ : c'est la variable cin. La classe istream surcharge l'opérateur >> pour tous les types prédéfinis du C++. Il faut, si besoin est, le surcharger pour les nouveaux types introduits (cf. § 3.9). En plus de l'opérateur >>, la classe istream est dotée des méthodes suivantes (non exhaustif) :

A.4   Les fichiers

Les entrées-sorties sur les fichiers sont également réalisées avec des flots en C++. Ce type d'opérations nécessite l'inclusion de l'en-tête fstream en plus de l'en-tête iostream. Les deux grandes classes permettant de réaliser ces opérations sont :
Précédent Index Suivant