C ++ wcerr - C ++ szabványos könyvtár

A C ++ fájlban található wcerr objektum osztály ostream objektuma. A szabványos C hiba kimeneti adatfolyam stderrhez van társítva.

Különbség a cerr és a wcerr között

cerrchar (keskeny karakter) karaktertípusként használja. Használható ASCII és ANSI karakterekhez.

A nemzetközivé váláshoz Unicode karakterláncokra van szükségünk, amelyek nem illenek a char-ba. wcerrhasznál wchar_t(széles karakter) és használható Unicode karakterekhez.

Különbség a wcout és a wcerr között

Kezdő C ++ programozó használja cout, és wcoutmegjeleníti a hiba a szokásos kimenetet, hogy debug a programok, de ez mindig jó gyakorlat használatának cerrés wcerra megjelenítési hibák.

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.

wcerr nyilatkozat

 extern wostream wcerr; 

A "header file"> header fájlban van meghatározva.

Az wcerrobjektum inicializálása biztosított egy típusú objektum első ios_base::Initépítése során vagy azelőtt . Az wcerrobjektum felépítése után a kifejezés (wcerr.flags & unitbuf)nem nulla, ami azt jelenti, hogy az ezekhez a folyamobjektumokhoz küldött kimenet azonnal az operációs rendszerbe kerül. Szintén wcerr.tie() == &wcoutazaz wcerr.tie()visszatér, &wcoutami azt jelenti, hogy wcout.flush()minden kimeneti művelet előtt végrehajtásra kerül wcerr.

A "wc" wcerr kifejezés "széles karakterre" utal, az "err" pedig "hibát" jelent, ezért a wcerr "széles karakter hibát" jelent. Az wcerrobjektumot a beszúrási operátorral (<<) együtt használjuk a karakterfolyam megjelenítéséhez. Az általános szintaxis:

 wcerr << varName;

vagy

 wcerr << "Néhány húr";

Az extrakciós operátor többször is használható változók, húrok és manipulátorok (például endl) kombinációjával :

 wcerr << var1 << "Néhány karakterlánc" << var2 << endl;

Példa: Hogyan működik a wcerr?

 #include #include using namespace std; int main() ( char fileName() = "data.txt"; wifstream infile(fileName); if(infile) wcout << infile.rdbuf(); else wcerr << "Error while opening the file " << fileName << endl; return; )

A program futtatásakor a kimenet a következő lesz: (ha a fájlt nem sikerült megnyitni)

 Hiba történt a data.txt fájl megnyitásakor

érdekes cikkek...