(P10): Prácticas de Diseño Segundo Semestre Curso 2012/2013
(P10): Prácticas de Diseño Segundo Semestre Curso 2012/2013
(P10): Prácticas de Diseño Segundo Semestre Curso 2012/2013
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
SO #<strong>2013</strong>/1 Revisión 12.1<br />
Si por cualquier motivo, alguna operación no se pue<strong>de</strong> realizar (por<br />
ejemplo, entrar en un directorio), el programa sacará por el error<br />
estándar un mensaje con el formato: "%s:␣Error(%d),␣%s\n"<br />
don<strong>de</strong>:<br />
❒ ␣ es un espacio en blanco.<br />
❒ El primer campo ( %s) es el nombre completo <strong>de</strong>l ejecutable<br />
(argv[0]).<br />
❒ El segundo campo ( %d) es el código <strong>de</strong> error (ver sección<br />
3.3.5 y los diferentes tipos <strong>de</strong> errores correspondientes a las<br />
distintas opciones seleccionables).<br />
❒ El último campo ( %s) es el texto <strong>de</strong>l mensaje <strong>de</strong> error generado.<br />
Alguna <strong>de</strong> las operaciones pue<strong>de</strong>n generar errores (por ejemplo,<br />
no po<strong>de</strong>r leer un archivo). En ese caso el programa generará un<br />
error, pero continuará ejecutando el resto <strong>de</strong> operaciones que pueda<br />
completar (por ejemplo, seguir leyendo el contenido <strong>de</strong> otros<br />
archivos.). Los errores no abortan la ejecución <strong>de</strong>l programa. El<br />
programa <strong>de</strong>volverá por medio <strong>de</strong> la llamada exit(int) el valor<br />
<strong>de</strong> error <strong>de</strong> la última operación que dio error ó 0 si ninguna operación<br />
dio problemas. Los códigos <strong>de</strong> error que se pue<strong>de</strong>n dar en<br />
cada operación vienen indicados en los siguientes apartados.<br />
Ejemplo <strong>de</strong> salida <strong>de</strong>l programa:<br />
[usuario@maquina ~] busca . -n .doc -print<br />
./fichero.doc<br />
./texto.doc<br />
./tecto.doc.bak<br />
Ejemplo <strong>de</strong> caso <strong>de</strong> error:<br />
(12)