Objekt cerr v C ++ je objektem třídy ostream. Je spojen se standardním výstupním proudem stderr chyby C.
cerr prohlášení
extern ostream cerr;
Je definován v hlavičkovém souboru.
Je cerrzajištěno, že objekt bude inicializován během nebo před prvním vytvořením objektu typu ios_base::Init. Po cerrzkonstruování objektu je výraz ( cerr.flags& unitbuf) nenulový, což znamená, že jakýkoli výstup odeslaný těmto objektům proudu je okamžitě vyprázdněn do operačního systému. Také cerr.tie()== &couttj. cerr.tie()Vrací, &coutcož znamená, že cout.flush()je provedeno před jakoukoli výstupní operací na cerr.
Písmeno „c“ cerrodkazuje na „znak“ a „err“ znamená „chybu“, tedy cerrznamená „chybu znaku“.
cerrObjekt se používá spolu s operátorem vkládání (<<), aby se zobrazí proud znaků. Obecná syntaxe je:
cerr << varName;
nebo
cerr << "Nějaký řetězec";
Operátor extrakce lze použít více než jednou s kombinací proměnných, řetězců a manipulátorů (jako endl):
cerr << var1 << "Some String" << var2 << endl;
Programátoři C ++ pro začátečníky používají coutk zobrazení chyby pomocí standardního výstupu k ladění svých programů, ale vždy je dobrým zvykem použít cerrk zobrazení chyb.
Důvodem je, že místo zobrazování chybového proudu na obrazovce můžete později chybový proud změnit a zapsat chyby do souboru.
Příklad: Jak cerr funguje?
#include #include using namespace std; int main() ( char fileName() = "data.txt"; ifstream infile(fileName); if(infile) cout << infile.rdbuf(); else cerr << "Error while opening the file " << fileName <
When you run the program, the output will be: (if the file could not be opened)
Error while opening the file data.txt








