C ++ wcerr - C ++ Standardbibliotek

Wcerr-objektet i C ++ är ett objekt av klass ostream. Det är associerat med standard C-felutmatningsströmstoder.

Skillnad mellan cerr och wcerr

cerranvänder char (smal karaktär) som karaktärstyp. Den kan användas för ASCII- och ANSI-tecken.

För internationalisering behöver vi Unicode-strängar som inte passar in röd. wcerranvänder wchar_t(brett tecken) och kan användas för Unicode-tecken.

Skillnad mellan wcout och wcerr

Nybörjare C ++ - programmerare använder coutoch för wcoutatt visa felet med standardutdata för att felsöka sina program, men det är alltid bra praxis att använda cerroch wcerrvisa fel.

Detta beror på att istället för att visa felströmmen till skärmen kan du senare ändra felströmmen för att skriva felen till en fil.

wcerr förklaring

 extern wostream wcerr; 

Det definieras i rubrikfil "> rubrikfil.

Det wcerrändamål säkerställs att initieras under eller före den första gången ett objekt av typen ios_base::Initkonstrueras. Efter att wcerrobjektet har konstruerats är uttrycket (wcerr.flags & unitbuf)icke noll, vilket innebär att all utdata som skickas till dessa strömobjekt spolas omedelbart till operativsystemet. Också wcerr.tie() == &wcoutdvs wcerr.tie()returnerar &wcoutvilket innebär att det wcout.flush()körs innan någon utgångsoperation på wcerr.

"Wc" i wcerr hänvisar till "wide character" och "err" betyder "error", därav wcerr betyder "wide character error". Det wcerrobjekt används tillsammans med införingsoperatören (<<) för att visa en ström av tecken. Den allmänna syntaxen är:

 wcerr << varName;

eller

 wcerr << "Någon sträng";

Extraktionsoperatören kan användas mer än en gång med en kombination av variabler, strängar och manipulatorer (som endl):

 wcerr << var1 << "Någon sträng" << var2 << endl;

Exempel: Hur fungerar 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; )

När du kör programmet blir resultatet: (om filen inte kunde öppnas)

 Fel när filen data.txt öppnades

Intressanta artiklar...