Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: Azby97 en 25 Mayo 2016, 06:21 am



Título: Diferencias entre cerr y cout
Publicado por: Azby97 en 25 Mayo 2016, 06:21 am
Actualmente estoy cursando primero del Grado en Ingeniería Informática. Y se he venido este dilema en estas noches de estudio nocturnas tan frecuentes entre los estudiantes de Ingeniería  :rolleyes:

Estamos ahora dando gestión de E/S, flujos, lectura desde ficheros y escritura en los mismos, etc, en C++

La pregunta a priori debería ser sencilla, pero no le encuentro el sentido aún a usar cerr en vez de cout cuando por ejemplo pones un if que comprueba si se ha introducido un número de argumentos correcto, y si no, pues se finaliza el programa con un exit. ¿Por qué mi profesor en sus ejemplos pone en estos casos antes del exit un cerr en vez de un cout en el típico mensaje de "Error: esto está fallando"?


Un saludo.


Título: Re: Diferencias entre cerr y cout
Publicado por: engel lex en 25 Mayo 2016, 06:29 am
la salida de datos a la consola puede ser por standard output o por standard error output, algunas aplicaciones distinguen esta salida y les ayuda a saber si es una salida standard o un error, por default las ventanas de consola redirigen todo este trafico al stdout

ej, al ejecutar por consola en linux puedes redirigir la salida a una archivo usando como parametro el simbolo mayor que (> ), sin embargo como la consola de linux distingue entre stdout y stderr los mensajes enviados como error no se guardan en el archivo, sino que se muestran en la consola (no se si esto aplica para windows)


Título: Re: Diferencias entre cerr y cout
Publicado por: Azby97 en 25 Mayo 2016, 07:08 am
la salida de datos a la consola puede ser por standard output o por standard error output, algunas aplicaciones distinguen esta salida y les ayuda a saber si es una salida standard o un error, por default las ventanas de consola redirigen todo este trafico al stdout

ej, al ejecutar por consola en linux puedes redirigir la salida a una archivo usando como parametro el simbolo mayor que (> ), sin embargo como la consola de linux distingue entre stdout y stderr los mensajes enviados como error no se guardan en el archivo, sino que se muestran en la consola (no se si esto aplica para windows)

Entiendo, y yo mirando como estaba funcionando el programa abriendo continuamente archivos  :xD

Todos los días se aprende algo nuevo  ;D