Qu’est-ce que ‘iostream’ en C++ ?


est l'en-tête contenant les définitions des classes et méthodes de flux standard C++. Les flux sont l'abstraction/standard pris en charge en C++ pour effectuer des entrées/sorties.

Les flux les plus couramment utilisés en C++ sont cin pour l'entrée et cout pour la sortie. Effectivement, les flux fournissent une abstraction portable en langage pour l'interface avec le système de fichiers local pour lire et écrire des données persistantes. Le code utilisateur n'a pas besoin d'utiliser les flux cin et cout (ou même cerr pour les erreurs) couramment utilisés. Ces flux prédéfinis sont principalement des conventions, mais votre objectif ne doit pas être d'encombrer ces flux avec des responsabilités et des dépendances inutiles.


The following is an example C++ program utilizing streams:

  1. #include //includes iostream header 
  2. #include //includes filestream header 
  3.  
  4. int main() { 
  5.  
  6. { //block for standard 
  7. //C++ streams 
  8.  
  9. std::string s; //local string variable 
  10. //declaration 
  11.  
  12. std::cin >> s; //read string from 
  13. //standard input 
  14.  
  15. std::cout << s; //write string to 
  16. //standard output 
  17.  
  18. std::cerr << s; //write string to 
  19. //standard error out 
  20.  
  21.  
  22. { //block for user 
  23. //streams 
  24.  
  25. std::string s; //local string 
  26. //variable declaration 
  27.  
  28. std::ifstream input("in.txt"); //creating input stream 
  29. //named input 
  30. //stream filename=in.txt 
  31.  
  32. std::ofstream output("out.txt"); //creating output stream 
  33. //named output 
  34. //stream filename=out.txt 
  35.  
  36. input >> s; //reads a string 
  37. //from input stream 
  38.  
  39. output << s; //writes string to 
  40. //output stream 
  41. return 0; 

Le programme ci-dessus va lire une chaîne de caractères d'un utilisateur et l'imprimer à la fois sur le flux de sortie standard et sur le flux d'erreur standard (Notez que de nombreux terminaux afficheront ces deux flux simultanément sans indiquer clairement que la sortie provient de flux différents). Après avoir lu cette chaîne et l'avoir imprimée, le programme ouvrira un fichier nommé "in.txt", lira une seule chaîne de ce fichier et imprimera cette chaîne dans un autre fichier nommé "out.txt"

Note finale : Dans les systèmes linux/unix, vous pouvez rediriger les cin/cout standard pour lire et écrire dans/depuis des fichiers plutôt que dans l'entrée de la console avec la syntaxe shell suivante :

  1. ./PROGRAM_INVOCATION < INPUT_FILE > OUTPUT_FILE 

The ‘<’ specifies that the next string is the name of the input file to read for std::cin and the ‘>’ specifies that the next string argument is the output file to write std::cout to.