Vamos a estudiar la diferencia entre exit (0) y exit (1) con la ayuda del cuadro comparativo.
Gráfica comparativa
Base para la comparación | salida (0) | salida (1) |
---|---|---|
BASIC | Informa al sistema operativo sobre la finalización / finalización "exitosa / normal" del programa. | Informa al sistema operativo sobre la terminación "anormal" del programa. |
Sintaxis | salida (0); | salida (1); |
Indica | Indica que la tarea se ha realizado con éxito. | Indica que la tarea se ha abortado en el medio debido al error. |
Macros | EXIT_SUCCESS | EXIT_FAILURE |
Definición de salida (0)
La función exit (0) es una declaración de salto de C ++. Se utiliza para terminar el programa o dejar que el control salga del programa. Informa al sistema operativo sobre la finalización exitosa del programa, lo que indica al sistema operativo que la tarea del programa se ha completado con éxito. La macro utilizada para el código de retorno "0" es "EXIT_SUCCESS", por lo tanto, puede usarla de una manera salir (EXIT_SUCCESS). La forma general de la función de salida (0) es:
salida vacía (int return_code);
Aquí, el parámetro formal "código_retorno" es el valor que se devuelve a la función de llamada. El código returen es siempre de tipo entero, ya que el valor devuelto a la función de llamada será cero o un valor distinto de cero. La salida (0) es una función de biblioteca estándar, si estamos usando la salida (0) en el programa, tenemos que usar el archivo de encabezado.
Entendamos exit (0) con un ejemplo: -
#include // función de biblioteca estándar int main () {FILE * ptrFile; ptrFile = fopen ("myfile.txt", "r"); // abre el archivo en modo de solo lectura si (ptrFile == NULL) {cout << "Error al abrir el archivo"; salida (1); // alternativamente puedes usar exit (EXIT_FAILURE)} exit (0); // alternativamente puedes usar exit (EXIT_SUCCESS)}
En el código anterior, estamos intentando abrir un archivo llamado "myfile.txt". Habíamos creado un puntero al archivo "myfile.txt". Si el archivo "myfile.txt" existe, el puntero apuntará a la dirección de ese archivo y exit (0) ejecutará informando al sistema operativo que el archivo se abrió correctamente. En caso de que el archivo no esté presente, el puntero al archivo "myfile.txt" ahora contendrá NULL y exit (1) se ejecutará informando al sistema operativo que el archivo no se abre debido a un error o algo así.
Definición de salida (1)
La función exit (1) también es una declaración de salto de C ++. La salida (1) también termina el programa pero, de forma anormal. La salida (1) informa al sistema operativo que el programa no se ejecutó con éxito, o se anuló entre la ejecución debido a algún error u otro. La función exit (1) se define en la función de biblioteca estándar, en caso de que esté utilizando exit (1) en su programa, debe mencionar específicamente el archivo de encabezado en la parte superior del programa.
La macro para el código de retorno "1" es "EXIT_FAILURE", por lo tanto, se puede escribir de una manera "exit (EXIT_FAILURE)".
Ahora entendamos la función de salida (1) con la ayuda del programa.
// abre el elemento en la parte superior de la pila int pop (int stack_name, int size, int Top) {if (Top == - 1) {cout << "stack is underflow"; salida (1); } else {int s = s [Arriba]; Parte superior--; devoluciones); }}
Aquí, la función se define para hacer estallar el elemento en la parte superior de la pila, si se encuentra que la parte superior de la pila está vacía, es decir, la parte superior es -1. Entonces, la tarea de extraer el elemento más superior de la pila no se completa con éxito ya que la pila está vacía y luego regresamos exit (1). Indica que la tarea de la función pop no se ha completado. Por lo tanto, la ejecución se termina anormalmente.
Diferencias clave entre exit (0) y exit (1)
- El único código de retorno que indica la finalización exitosa del programa es "0". Para informar sobre la terminación anormal del programa, podemos usar cualquier valor que no sea "0", es decir, podemos usar "1", "2", "3" ... eso significa que un valor distinto de cero indica una terminación anormal del programa.
- También se puede usar una macro en lugar del código de retorno. Al igual que, en el lugar "0" puede usar "EXIT_SUCCESS" mientras que en lugar de "1" puede usar "EXIT_FAILURE".
Semejanza:
- Tanto exit (0) como exit (1), son las declaraciones de salto de C ++.
- Tanto exit (0) como exit (1), se utilizan para terminar el programa.
- Tanto exit (0) como exit (1) se definen en el archivo de encabezado.
- Tanto exit (0) como exit (1), informan el estado de finalización del programa al sistema operativo.
Nota:
Si la función exit () no devuelve nada, significa que no desea revelar el estado de la terminación del programa al sistema operativo.
Conclusión:
Para informar el estado de la terminación del programa, uno usa una función exit (). Una salida (0) revela al sistema operativo que la tarea del programa se ha completado con éxito. Una salida (1) revela que la tarea del programa no se ha completado y la ejecución del programa se anula de forma anormal.