Obiekt Cerr w C ++ jest obiektem klasy ostream. Jest on powiązany ze standardowym stderr strumienia wyjściowego błędu języka C.
deklaracja cerr
zewnętrzny ostream cerr;
Jest zdefiniowany w pliku nagłówkowym "> plik nagłówkowy.
cerr
Obiektu zapewnia być inicjowane w trakcie lub przed pierwszym obiektem typu ios_base::Init
jest wykonana. Po cerr
skonstruowaniu obiektu wyrażenie ( cerr.flags
& unitbuf
) ma wartość niezerową, co oznacza, że wszelkie dane wyjściowe wysyłane do tych obiektów strumienia są natychmiast przesyłane do systemu operacyjnego. Zwraca także cerr.tie()
== &cout
ie, co oznacza, że jest wykonywane przed jakąkolwiek operacją wyjściową na cerr.cerr.tie()
&cout
cout.flush()
Litera „c” w cerr
odnosi się do „znaku”, a „err” oznacza „błąd”, a więc cerr
„błąd znaku”.
cerr
Przedmiot jest stosowane wraz z operatorem wstawiania (<<) w celu wyświetlania strumienia znaków. Ogólna składnia to:
cerr << varName;
lub
cerr << "Some String";
Operator ekstrakcji może być użyty więcej niż raz z kombinacją zmiennych, łańcuchów i manipulatorów (np. Endl):
cerr << var1 << "Some String" << var2 << endl;
Początkujący programiści C ++ używają cout
do wyświetlania błędów przy użyciu standardowego wyjścia do debugowania swoich programów, ale zawsze dobrze jest używać cerr
do wyświetlania błędów.
Dzieje się tak, ponieważ zamiast wyświetlać strumień błędów na ekranie, możesz później zmienić strumień błędów, aby zapisać błędy w pliku.
Przykład: Jak działa cerr?
#include #include using namespace std; int main() ( char fileName() = "data.txt"; ifstream infile(fileName); if(infile) cout << infile.rdbuf(); else cerr << "Error while opening the file " << fileName <
When you run the program, the output will be: (if the file could not be opened)
Error while opening the file data.txt