📜  在C++中返回0与返回1

📅  最后修改于: 2021-05-30 10:25:55             🧑  作者: Mango

C / C++中的Return语句:

  • C和C++支持return语句,这些语句也称为跳转语句。
  • 它用于从函数返回值或停止执行函数。有关return语句的更多信息,请参阅带有示例的C / C++中的return语句。

在两种情况下使用return语句:

方法1.在主要函数

  • 在这种情况下,return语句将停止程序的执行,并且01将表示执行状态。
  • 这些状态代码在C语言中长期用作惯例,因为该语言不支持对象和类以及异常。
  • return 0:返回0表示程序将成功执行并执行了预期的操作。
  • return 1: return 1表示在执行程序时存在一些错误,并且未执行预期的操作。

return语句的重要特征

  • 如果退出时的状态不是0,则将错误消息打印到stderr。
  • 根据操作系统的不同,返回码有不同的约定。
  • 如果执行了一些无效的操作,操作系统本身可能会使用特定的退出状态代码来终止程序。

下面的程序说明了main函数中return 0return 1的用法:

C++
// C++ program to divide two numbers
#include 
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;
}


C++
// C++ program to demonstrate the use
// of return 0 and return 1 inside
// user-defined function
#include 
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;
}


输出:
Division by zero is not possible.

方法2.在用户定义的函数

  • C++将布尔值视为完全独立的数据类型,只有两个不同的值,即truefalse
  • 值1和0的类型为int,并且不能隐式转换为布尔值,这意味着:
    • return 0:从函数返回false。
    • return 1:从函数返回true。

下面的程序说明了用户定义函数中return 0return 1的用法:

C++

// C++ program to demonstrate the use
// of return 0 and return 1 inside
// user-defined function
#include 
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;
}
输出:
You are an adult

结论:

Use-case return 0 return 1
In the main function return 0 in the main function means that the program executed successfully. return 1 in the main function means that the program does not execute successfully and there is some error.
In user-defined function return 0 means that the user-defined function is returning false. return 1 means that the user-defined function is returning true.
要从最佳影片策划和实践问题去学习,检查了C++基础课程为基础,以先进的C++和C++ STL课程基础加上STL。要完成从学习语言到DS Algo等的更多准备工作,请参阅“完整面试准备课程”