Objekt wcerr u jeziku C ++ objekt je klase ostream. Povezan je sa standardnim izlaznim tokom pogreške C stderr.
Razlika između cerr i wcerr
cerr
koristi char (uski znak) kao vrstu znaka. Može se koristiti za ASCII i ANSI znakove.
Za internacionalizaciju trebamo Unicode nizove koji se ne uklapaju u char. wcerr
koristi wchar_t
(široki znak) i upotrebljiv za Unicode znakove.
Razlika između wcout i wcerr
Početnici programeri C ++ koriste cout
i wcout
za prikaz pogreške koristeći standardni izlaz za otklanjanje pogrešaka u svojim programima, ali uvijek je dobra praksa koristiti cerr
i wcerr
prikazati pogreške.
To je zato što umjesto prikazivanja toka pogreške na zaslonu, kasnije možete promijeniti tok pogreške kako biste pogreške zapisali u datoteku.
wcerr deklaracija
vanjski wostream wcerr;
Definirano je u datoteci zaglavlja "> datoteka zaglavlja.
Osigurano wcerr
je da se objekt inicijalizira tijekom ili prije prvog ios_base::Init
konstruiranja objekta tipa . Nakon što je wcerr
objekt konstruiran, izraz (wcerr.flags & unitbuf)
nije nula, što znači da se svaki izlaz poslan tim objektima streama odmah ispire u operativni sustav. Također wcerr.tie() == &wcout
ie wcerr.tie()
vraća, &wcout
što znači da wcout.flush()
se izvršava prije bilo koje izlazne operacije na wcerr
.
"Wc" u wcerr
odnosi se na "širok znak", a "pogreška" znači "pogreška", stoga wcerr znači "pogreška širokog znaka". wcerr
Objekt se koristi uz umetanje operatera (<<), kako bi se prikazali tok znakova. Općenita sintaksa je:
wcerr << varName;
ili
wcerr << "Neki niz";
Operator ekstrakcije može se koristiti više puta s kombinacijom varijabli, nizova i manipulatora (poput endl
):
wcerr << var1 << "Neki niz" << var2 << endl;
Primjer: Kako radi 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; )
Kada pokrenete program, izlaz će biti: (ako datoteku nije moguće otvoriti)
Pogreška prilikom otvaranja datoteke data.txt