C ++ 'daki wcerr nesnesi, ostream sınıfının bir nesnesidir. Standart C hata çıkış akışı stderr ile ilişkilidir.
Cerrah ve Wcerr Arasındaki Fark
cerr
karakter türü olarak char (dar karakter) kullanır. ASCII ve ANSI karakterleri için kullanılabilir.
Uluslararasılaştırma için, char'a uymayan Unicode dizelerine ihtiyacımız var. wcerr
kullanır wchar_t
(geniş karakter) ve Unicode karakterler için kullanılabilir.
Wcout ve wcerr arasındaki fark
Acemi C ++ programcıları , programlarında hata ayıklamak için standart çıktı kullanarak hatayı kullanır cout
ve wcout
görüntüler, ancak kullanmak cerr
ve wcerr
hataları görüntülemek her zaman iyi bir uygulamadır .
Bunun nedeni, hata akışını ekrana göstermek yerine daha sonra hataları bir dosyaya yazmak için hata akışını değiştirebilmenizdir.
wcerr bildirimi
harici wostream wcerr;
Başlık dosyasında "> başlık dosyasında tanımlanır.
wcerr
Nesne sırasında veya tip bir amacı ilk kez daha önce başlatılması için temin edilir ios_base::Init
inşa edilir. Sonra wcerr
nesne oluşturulur, sentezleme (wcerr.flags & unitbuf)
herhangi bir çıkış, bu akım şimdi işletim sistemine temizlendi nesneleri için gönderilen olan araçlar, sıfır olmayan bir. Ayrıca wcerr.tie() == &wcout
, yani wcerr.tie()
döner &wcout
araçlar wcout.flush()
ile herhangi bir çıkış işleminden önce yürütülür wcerr
.
"Wc", wcerr
"geniş karakter" anlamına gelir ve "err", "hata" anlamına gelir, dolayısıyla wcerr "geniş karakter hatası" anlamına gelir. wcerr
Nesne karakter akışını göstermek amacıyla yerleştirme operatörü (<<) ile birlikte kullanılır. Genel sözdizimi şöyledir:
wcerr << varName;
veya
wcerr << "Bazı Dizeler";
Ayıklama operatörü değişkenler, dizeler ve manipülatörlerin bir kombinasyonuyla birden fazla kullanılabilir (örneğin endl
):
wcerr << var1 << "Bazı Dizeler" << var2 << endl;
Örnek: wcerr nasıl çalışır?
#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; )
Programı çalıştırdığınızda, çıktı şu olacaktır: (dosya açılamazsa)
Data.txt dosyasını açarken hata