Java System.exit(0) 和C++ return 0 对比

Java System.exit(0) 和C++ return 0 对比

Java和C++是具有不同应用和设计目标的语言。C++是过程性编程语言C的扩展,而Java则依靠Java虚拟机来实现安全和高度可移植性。这导致它们有许多不同之处。在这篇文章中,我们将看到C++ return 0Java System.exit(0) 之间的区别。在讨论这些差异之前,让我们先了解它们各自的实际含义。

C++ return 0

在标准C++中,建议创建一个有返回类型的 main() 函数。

所以, main() 函数必须返回一个整数值,这个整数值通常是将被传回给操作系统的值。

stdlib.h 中,宏 EXIT_SUCCESSEXIT_FAILURE 是这样定义的 –

#define EXIT_SUCCESS    0
#define EXIT_FAILURE    1
  • return 0 — 成功终止。
  • return 1 或任何其他非零值 -> 不成功的终止。
    返回不同的值,如 return 1return -1 或任何其他非零值,意味着程序正在返回错误。
#include <iostream>

using namespace std;

int main()
{
    int num1, num2;
    cin >> num1 >> num2;
    cout << num1 + num2;

    return 0;
}

Java System.exit(0)

首先要考虑的是,java中的 main 函数的返回类型是 void

  • 在Java中,不能返回退出代码,因为它是一个无效函数。如果想明确地指定一个退出代码,必须使用 System.exit() 方法。
  • java.lang.System.exit() 方法通过终止运行的Java虚拟机退出当前程序。

java.lang.System.exit() 方法的声明 –

public static void exit(int status)
exit(0) -->successful termination.
exit(1) or exit(-1) or any other non-zero value –-> unsuccessful termination.

Java示例代码:

import java.io.*;

class YiibaiDemo {
    public static void main (String[] args) {
        System.out.println("GeeksForGeeks");
    }
}

注意: return 0System.exit(0) 的作用都是和 main() 函数的返回类型不同。

下表描述了这些区别 –

SR.NO C++ return 0 Java System.exit(0)
1 C++中的 main() 函数有一个返回类型。因此,C++中的每个 main 方法都应该返回任何值。 java中的 main() 方法的返回类型是void,main方法不应该返回任何值。
2 在C++程序中, return 0 语句是可选的:编译器会自动在程序中隐含地添加一个 return 0 在Java中,没有特别要求调用 System.exit(0) 或明确添加它。
3 它是一个用来返回某些值的关键字,所以它不需要任何声明。它只需要 return 关键字与值或变量。 java.lang.System.exit() 方法的声明: public static void exit(int status)
4 一般来说, return 0 被用来向操作系统返回退出代码。 如果想明确地指定一个退出代码给操作系统,必须使用 System.exit()
5 在C++程序中使用 return 0 被认为是一种好的做法。 在实践中,使用 System.exit(0) 是可以避免的,因为 main() 方法有 void 返回类型。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程