Maison >développement back-end >Tutoriel C#.Net >Quelle est la fonction du fichier d'en-tête iostream
Le fichier d'en-tête iostream contient des méthodes pour faire fonctionner les flux d'entrée et de sortie, telles que la lecture d'un fichier dans un flux ; sa fonction est de permettre aux débutants de disposer d'un environnement de test d'entrée et de sortie en ligne de commande pratique. iostream est conçu pour fournir un mécanisme d'E/S extensible de type sécurisé.
L'environnement d'exploitation de ce tutoriel : système Windows 7, version C++17, ordinateur Dell G3.
Le langage C++ ne gère pas directement les entrées et les sorties, mais gère les E/S via un ensemble de types définis dans la bibliothèque standard. Ces types prennent en charge les opérations d'E/S qui lisent et écrivent des données sur le périphérique. Le périphérique peut être un fichier, une fenêtre de console, etc. Il existe également des types qui autorisent les E/S mémoire, c'est-à-dire la lecture de données à partir de chaînes et l'écriture de données dans des chaînes.
Le fichier d'en-tête 317e6b6395ab75e70e7f0880af8f6835 en C++/C++11 définit l'objet de flux d'entrée/sortie standard. L'inclusion de 317e6b6395ab75e70e7f0880af8f6835 inclut également automatiquement 68f3de17607fa85b1eb628686f64a195, acccb54a389e0baa0241b2d4d6abf2d2, b2183bd60bc8132bf9e2d0a9243f6275, ad3e299ade7c783006cf69c7370756a8 et c247aadae35403e5c039ed18c7357087.
Les objets du fichier d'en-tête 317e6b6395ab75e70e7f0880af8f6835 incluent :
(1), caractères étroits (char) : cin (flux d'entrée standard (objet)), cout (flux de sortie standard (objet )), cerr (flux de sortie standard pour les erreurs (objet)), clog (flux de sortie standard pour la journalisation (objet)) ;
(2), caractères larges (wchar_t), c'est-à-dire caractères larges : wcin (flux d'entrée standard (large) (objet)), wcout (flux de sortie standard (large) (objet)), wcerr (flux de sortie standard pour les erreurs (large) (objet)), wclog (flux de sortie standard pour la journalisation (large) (objet)).
__PURE_APPDOMAIN_GLOBAL extern _CRTDATA2 istream cin, *_Ptr_cin; __PURE_APPDOMAIN_GLOBAL extern _CRTDATA2 ostream cout, *_Ptr_cout; __PURE_APPDOMAIN_GLOBAL extern _CRTDATA2 ostream cerr, *_Ptr_cerr; __PURE_APPDOMAIN_GLOBAL extern _CRTDATA2 ostream clog, *_Ptr_clog; __PURE_APPDOMAIN_GLOBAL extern _CRTDATA2 wistream wcin, *_Ptr_wcin; __PURE_APPDOMAIN_GLOBAL extern _CRTDATA2 wostream wcout, *_Ptr_wcout; __PURE_APPDOMAIN_GLOBAL extern _CRTDATA2 wostream wcerr, *_Ptr_wcerr; __PURE_APPDOMAIN_GLOBAL extern _CRTDATA2 wostream wclog, *_Ptr_wclog;
Têtes, modèles et classe IO C++ ( https://www.ntu.edu.sg/home/ehchua/programming/cpp/cp10_IO.html ):
Bibliothèque IO :
(1), type istream (flux d'entrée), fournit des opérations d'entrée ;
(2), type ostream (flux de sortie), fournit des opérations de sortie ;
(3), cin, un objet istream, le flux d'entrée standard, utilisé pour lire les données de l'entrée standard
(4), cout, un objet ostream, le flux de sortie standard ; , à partir de la sortie standard, écrit les données et la sortie peut être redirigée (« > » ou « 1> ») vers un fichier spécifié utilisé pour écrire des données sur la sortie standard, généralement utilisée pour le contenu de sortie normal du programme.
(5), cerr, un objet ostream, flux d'erreur standard, généralement utilisé pour générer des informations d'erreur de programme ou tout autre contenu de sortie qui n'appartient pas à la logique normale, écrit dans l'erreur standard, par défaut, écrit dans The les données de cerr ne sont pas mises en mémoire tampon ; les informations d'erreur peuvent être envoyées directement à l'écran sans attendre le tampon ou un nouveau caractère de nouvelle ligne avant d'être affichées ; la sortie peut être redirigée vers le fichier spécifié via la méthode "2>" utilisé Pour afficher des messages d'erreur ou tout autre contenu de sortie qui n'appartient pas à la logique normale du programme.
(6), clog : un objet ostream, flux d'erreur standard, associé à l'erreur standard ; différence avec cerr : cerr et clog sont tous deux des flux d'erreur standard, la différence est que cerr ne passe pas par le tampon et sort directement les informations du moniteur, et les informations dans le sabot seront stockées dans le tampon par défaut et ne seront sorties que lorsque le tampon est plein ou que endl est rencontré par défaut, les données écrites dans le sabot sont mises en mémoire tampon. Clog est généralement utilisé pour signaler les informations d'exécution du programme et les stocker dans un fichier journal.
(7), opérateur >>, utilisé pour lire les données d'entrée d'un objet istream ;
(8), opérateur << object L'objet écrit les données de sortie ;
(9), fonction getline, lit une ligne de données à partir d'un istream donné et la stocke dans un objet chaîne donné.
Types de bibliothèque IO et fichiers d'en-tête : iostream définit les types de base pour la lecture et l'écriture des flux, fstream définit les types pour la lecture et l'écriture des fichiers nommés, et sstream définit les types pour la lecture et l'écriture des objets de chaîne mémoire, comme indiqué ci-dessous :
Pour prendre en charge les langages qui utilisent des caractères larges, la bibliothèque standard définit un ensemble de types et d'objets pour manipuler les données de type wchar_t. Les noms des versions à caractères larges des types et des fonctions commencent par un w. Par exemple, wcin, wcout et wcerr sont respectivement les versions à caractères larges de cin, cout et cerr. Les versions en caractères larges des types et des objets sont définies dans le même fichier d'en-tête que leurs types de versions en caractères simples correspondants.
Le code du test est le suivant :
#include "iostream.hpp" #include <iostream> // reference: http://www.tutorialspoint.com/cplusplus/cpp_basic_input_output.htm int test_iostream_cout() { char str[] = "Hello C++"; std::cout << "Value of str is : " << str << std::endl; return 0; } int test_iostream_cin() { char name[50]; std::cout << "Please enter your name: "; std::cin >> name; std::cout << "Your name is: " << name << std::endl; return 0; } int test_iostream_clog() { char str[] = "Unable to read...."; std::clog << "Error message : " << str << std::endl; return 0; } int test_iostream_cerr() { char str[] = "Unable to read...."; std::cerr << "Error message : " << str << std::endl; return 0; } // reference: https://msdn.microsoft.com/en-us/library/6xwbdak2(v=vs.80).aspx static void TestWide() { int i = 0; std::wcout << L"Enter a number: "; std::wcin >> i; std::wcerr << L"test for wcerr" << std::endl; std::wclog << L"test for wclog" << std::endl; } int test_iostream_w() { int i = 0; std::cout << "Enter a number: "; std::cin >> i; std::cerr << "test for cerr" << std::endl; std::clog << "test for clog" << std::endl; TestWide(); return 0; }
Recommandations associées : Tutoriel vidéo C++
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!