Después de tanto trabajar ya hallamos la contestación de esta dificultad que tantos usuarios de este sitio web han presentado. Si deseas compartir algún detalle puedes dejar tu conocimiento.
Solución:
Generalmente usas std::cout
para salida normal, std::cerr
por errores y std::clog
para “registro” (que puede significar lo que quieras que signifique).
La gran diferencia es que std::cerr
no está protegido como los otros dos.
En relación con la antigua C stdout
y stderr
, std::cout
corresponde a stdout
tiempo std::cerr
y std::clog
ambos corresponden a stderr
(excepto eso std::clog
está amortiguado).
stdout
y stderr
son flujos diferentes, aunque ambos se refieren a la salida de la consola de forma predeterminada. Redirigir (tubería) uno de ellos (por ejemplo, program.exe >out.txt
) no afectaría al otro.
En general, stdout
debe usarse para la salida real del programa, mientras que toda la información y los mensajes de error deben imprimirse en stderr
de modo que si el usuario redirige la salida a un archivo, los mensajes de información aún se imprimen en la pantalla y no al archivo de salida.
Flujo de salida estándar (cout):cout
es la instancia de la ostream
clase. cout
se utiliza para producir una salida en el dispositivo de salida estándar que suele ser la pantalla de visualización. Los datos necesarios para mostrarse en la pantalla se insertan en el flujo de salida estándar (cout
) utilizando el operador de inserción (<<
).
Flujo de error estándar sin búfer (cerr):cerr
es el flujo de error estándar que se utiliza para generar los errores. Esta es también una instancia de la ostream
clase. Como cerr
es sin búfer por lo que se usa cuando necesitamos mostrar el mensaje de error inmediatamente. No tiene ningún búfer para almacenar el mensaje de error y mostrarlo más tarde.
Flujo de error estándar almacenado en búfer (obstrucción): Este es también un ejemplo de ostream
clase y solía mostrar errores pero a diferencia cerr
el error se inserta primero en un buffer y se almacena en el tampón hasta que no se llena por completo.
Lectura adicional: entrada-salida-básica-c
Reseñas y calificaciones
Si aceptas, tienes la opción de dejar un artículo acerca de qué te ha parecido esta crónica.