El objeto cerr en C ++ es un objeto de clase ostream. Está asociado con el flujo de salida de error C estándar stderr.
declaración cerr
extern ostream cerr;
Se define en el archivo de encabezado "> archivo de encabezado.
Se cerr
garantiza que el objeto se inicializa durante o antes de la primera vez que ios_base::Init
se construye un objeto de tipo . Una vez cerr
construido el objeto, la expresión ( cerr.flags
& unitbuf
) no es cero, lo que significa que cualquier salida enviada a estos objetos de flujo se descarga inmediatamente en el sistema operativo. También cerr.tie()
== &cout
es decir, cerr.tie()
devuelve lo &cout
que significa que cout.flush()
se ejecuta antes de cualquier operación de salida en cerr.
La "c" en se cerr
refiere a "carácter" y "err" significa "error", por cerr
lo tanto significa "error de carácter".
El cerr
objeto se utiliza junto con el operador de inserción (<<) para mostrar un flujo de caracteres. La sintaxis general es:
cerr << varName;
o
cerr << "Alguna cadena";
El operador de extracción se puede usar más de una vez con una combinación de variables, cadenas y manipuladores (como endl):
cerr << var1 << "Alguna cadena" << var2 << endl;
Los programadores principiantes de C ++ suelen cout
mostrar el error utilizando la salida estándar para depurar sus programas, pero siempre es una buena práctica utilizarlo cerr
para mostrar errores.
Esto se debe a que, en lugar de mostrar el flujo de errores en la pantalla, más tarde puede cambiar el flujo de errores para escribir los errores en un archivo.
Ejemplo: ¿Cómo funciona 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