A C ++ - ban található cerr objektum az ostream osztály objektuma. A standard C hibakimeneti adatfolyam stderrhez van társítva.
cerr nyilatkozat
extern ostream cerr;
A "header file"> header fájlban van meghatározva.
Az cerr
objektum inicializálása biztosított egy típusú objektum első ios_base::Init
építése során vagy azelőtt . Az cerr
objektum felépítése után az ( cerr.flags
& unitbuf
) kifejezés nem nulla, ami azt jelenti, hogy az ezekhez a folyamobjektumokhoz küldött bármely kimenet azonnal átkerül az operációs rendszerbe. Szintén cerr.tie()
== &cout
azaz cerr.tie()
visszatér &cout
ami azt jelenti, hogy cout.flush()
lefut, mielőtt bármilyen kimenetet művelet cerr.
A "c" a cerr
"karakterre" utal, az "err" pedig "hibát", tehát cerr
"karakter hibát" jelent.
Az cerr
objektumot a beszúrási operátorral (<<) együtt használjuk a karakterfolyam megjelenítéséhez. Az általános szintaxis:
cerr << varName;
vagy
cerr << "Néhány húr";
Az extrakciós operátor többször is használható változók, karakterláncok és manipulátorok (például az endl) kombinációjával:
cerr << var1 << "Néhány karakterlánc" << var2 << endl;
A kezdő C ++ programozók cout
a hibát szokásos kimenet segítségével jelenítik meg programjaik hibakeresésére, de mindig jó gyakorlat a cerr
hibák megjelenítésére használni .
Ennek oka, hogy ahelyett, hogy megjelenítené a hiba folyamát a képernyőn, később megváltoztathatja a hiba folyamát, hogy a hibákat fájlba írja.
Példa: Hogyan működik a cerr?
#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