C C++中exit(0)和exit(1)的区别

C C++中exit(0)和exit(1)的区别

exit是 C/C++ 语言中的跳转语句,它采用整数(零或非零)来表示不同的退出状态。

C/C++中有两种退出状态:

1. 退出成功: 退出成功由 exit(0) 语句表示,表示程序成功终止,即程序已执行,没有任何错误或中断。
示例代码:

#include <file.h>
#include <stdio.h>

int main()
{
    FILE* file;

    // opening the file in read-only mode
    file = fopen("myFile.txt", "r");

    printf("File opening successful!");

    // EXIT_SUCCESS
    exit(0);
}

注意:创建一个名为“myFile.txt”的文件并在本地设备中运行代码以查看输出。

2. 退出失败: 退出失败由 exit(1) 表示,表示程序异常终止,即发生了一些错误或中断。可以使用 1 以外的不同整数来表示不同类型的错误。

示例代码:

#include <file.h>
#include <stdio.h>

int main()
{
    FILE* file;

    // open the file in read-only mode
    file = fopen("myFile.txt", "r");

    if (file == NULL) {
        printf("Error in opening file");

        // EXIT_FAILURE
        exit(1);
    }

    // EXIT_SUCCESS
    exit(0);
}

下面来看看这两种说法之间的区别——

exit(0) exit(1)
报告程序成功终止/完成。 报告程序异常终止。
当程序执行没有任何错误时报告终止。 在程序执行过程中发生错误或中断时报告终止。
语法是 exit(0); 语法是 exit(1);
exit(0) 的使用是完全可移植的。 exit(1) 的使用是不可移植的。
用于返回码 0 的宏是 EXIT_SUCCESS 用于返回码 1 的宏是 EXIT_FAILURE
EXIT_SUCCESS 由标准定义为零。 EXIT_FAILURE 不受标准限制为一,但许多系统确实将其实现为一。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程