C ++ wcerr - C ++ Standardbibliotek

Wcerr-objektet i C ++ er et objekt i klasse ostream. Det er assosiert med standard C-feilutgangsstrøm stderr.

Forskjellen mellom cerr og wcerr

cerrbruker røye (smal karakter) som karaktertype. Den kan brukes til ASCII- og ANSI-tegn.

For internasjonalisering trenger vi Unicode-strenger som ikke passer i røye. wcerrbruker wchar_t(bred karakter) og kan brukes til Unicode-tegn.

Forskjellen mellom wcout og wcerr

Nybegynner C ++ programmerere bruker coutog wcoutviser feilen ved hjelp av standardutdata for å feilsøke programmene, men det er alltid god praksis å bruke cerrog wcerrå vise feil.

Dette skyldes at i stedet for å vise feilstrømmen til skjermen, kan du senere endre feilstrømmen for å skrive feilene til en fil.

wcerr erklæring

 ekstern wostream wcerr; 

Den er definert i topptekstfil "> topptekstfil.

Den wcerrgjenstand er sikret som skal initialiseres under eller før den første gang et objekt av typen ios_base::Initer konstruert. Etter at wcerrobjektet er konstruert, er uttrykket (wcerr.flags & unitbuf)ikke null, noe som betyr at enhver utgang som sendes til disse strømobjektene umiddelbart skylles til operativsystemet. Også wcerr.tie() == &wcoutdvs. wcerr.tie()returnerer &wcoutsom betyr at det wcout.flush()blir utført før noen utgangsoperasjon på wcerr.

"Wc" i wcerr refererer til "wide character" og "err" betyr "error", derav wcerr betyr "wide character error". Den wcerrobjektet brukes sammen med innsetting operatør (<<) for å vise en strøm av tegn. Den generelle syntaksen er:

 wcerr << varName;

eller

 wcerr << "Noen strenger";

Utvinningsoperatøren kan brukes mer enn en gang med en kombinasjon av variabler, strenger og manipulatorer (som endl):

 wcerr << var1 << "Noen strenger" << var2 << endl;

Eksempel: Hvordan fungerer 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 kjører programmet, vil utdataene være: (hvis filen ikke kunne åpnes)

 Feil under åpning av filen data.txt

Interessante artikler...