devolver 0 vs devolver 1 en C++

La instrucción Return en C/C++:

Hay dos escenarios en los que se utilizarán declaraciones de retorno:                  

Método 1. Dentro de la función principal :

  • En este caso, la declaración de retorno detiene la ejecución del programa, y ​​0 o 1 denotarán el estado de ejecución.
  • Estos códigos de estado solo se usarán como una convención durante mucho tiempo en el lenguaje C porque el lenguaje no admite objetos, clases y excepciones.
  • retorno 0: un retorno 0 significa que el programa se ejecutará con éxito e hizo lo que se pretendía que hiciera.
  • retorno 1: un retorno 1 significa que hay algún error al ejecutar el programa y no está realizando lo que se pretendía que hiciera.

Características importantes de la declaración de devolución: 

  • Si sale con un estado distinto de 0 , imprima un mensaje de error en stderr .
  • Existen diferentes convenciones según el sistema operativo sobre los códigos de retorno.
  • El sistema operativo puede finalizar el programa con códigos de estado de salida específicos si se realizan algunas operaciones no válidas.

A continuación se muestra un programa para ilustrar el uso de return 0 y return 1 dentro de la función principal :

C++

// C++ program to divide two numbers
#include <iostream>
using namespace std;
 
// Driver Code
int main()
{
    // Given integers
    int a = 5, b = 0;
 
    if (b == 0) {
 
        // The below line is used to print
        // the message in the error window
        // fprintf(stderr, "Division by zero"
        //                 " is not possible.");
 
        // Print the error message
        // as return is -1
        printf("Division by zero is"
               " not possible.");
        return -1;
    }
 
    // Else print the division of
    // two numbers
    cout << a / b << endl;
 
    return 0;
}
Producción:

Division by zero is not possible.

Tiempo Complejidad: O(1)
Espacio Auxiliar: O(1)

Método 2. Dentro de la función definida por el usuario :

  • C++ trata a booleano como un tipo de datos completamente separado que tiene solo 2 valores distintos, es decir, verdadero y falso .
  • Los valores 1 y 0 son de tipo int y no son implícitamente convertibles a booleanos, eso significa:
    • return 0: devuelve falso de una función.
    • return 1: devolver verdadero de una función.

A continuación se muestra un programa para ilustrar el uso de return 0 y return 1 dentro de la función definida por el usuario:

C++

// C++ program to demonstrate the use
// of return 0 and return 1 inside
// user-defined function
#include <iostream>
using namespace std;
 
// Utility function returning 1 or
// 0 based on given age
int checkAdultUtil(int age)
{
    if (age >= 18)
        return 1;
    else
        return 0;
}
 
// Function to check for age
void checkAdult(int age)
{
    // Checking on the basis
    // of given age
    if (checkAdultUtil(age))
        cout << "You are an adult\n";
    else
        cout << "You are not an adult\n";
}
 
// Driver Code
int main()
{
    // Given age
    int age = 25;
 
    // Function Call
    checkAdult(age);
 
    return 0;
}
Producción:

You are an adult

Tiempo Complejidad: O(1)
Espacio Auxiliar: O(1)

Conclusión:

caso de uso volver 0 volver 1
En la función principal devolver 0 en la función principal significa que el programa se ejecutó correctamente. devolver 1 en la función principal significa que el programa no se ejecuta con éxito y hay algún error.
En función definida por el usuario devolver 0 significa que la función definida por el usuario está devolviendo falso. return 1 significa que la función definida por el usuario está devolviendo verdadero.

Publicación traducida automáticamente

Artículo escrito por CoderSaty y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *