cerr
C++ cerr obyekti
Misol
Xato xabarlarini chiqarish uchun cerr obyektidan foydalaning:
int x = 5;
int y = 0;
if(y == 0) {
cerr << "Division by zero: " << x << " / " << y << "\n";
} else {
cout << (x / y);
}
Ta’rif va qo‘llanilishi
cerr obyekti xato xabarlarini chiqarish uchun ishlatiladi. U cout bilan aynan bir xil ishlaydi, lekin uni xatolar jurnali fayli kabi boshqa manzilga yo‘naltirish mumkin. cerr va clog har doim bir xil manzilga yozadi.
Batafsilroq foydalanish uchun <iostream> cout obyektiga qarang.
cout va clog obyektlaridan farqli o‘laroq, cerr buferlanmaydi. Buferlangan chiqish natijani vaqtincha o‘zgaruvchida saqlab turadi va muayyan shartlar bajarilmaguncha uni manzilga yozmaydi. Buferlangan chiqishlar samaraliroq, chunki ular fayllarga kamroq yozish amallarini bajaradi. cerr buferlanmaydi, shu tufayli xato xabarlari dastur ishdan chiqishidan oldin faylga yozilishi mumkin.
Eslatma: cerr obyekti <iostream> sarlavha faylida aniqlangan.
Ko‘proq misollar
Misol
cerr obyektini konsol o‘rniga faylga yozadigan qilib yo‘naltiring:
#include <iostream>
#include <fstream>
using namespace std;
int main() {
int x = 5;
int y = 0;
// Set "error.log" as the output file for the error messages
ofstream log("error.log");
cerr.rdbuf(log.rdbuf());
// Write an error message
if(y == 0) {
cerr << "Division by zero: " << x << " / " << y << "\n";
} else {
cout << (x / y);
}
// Close the file
log.close();
return 0;
}
W3Schools Pathfinder
Yutuqlaringizni kuzating – bu bepul!
