当前位置: C语言 -- 标准库 -- <stdlib.h> -- _Exit

_Exit函数


概要:
#include <stdlib.h>
_Noreturn void _Exit(int status);

描述:

该函数正常终止程序执行,并将控制权返回给宿主环境。

通过atexit函数、at_quick_exit函数注册的函数以及通过signal函数注册的信号处理函数不会被调用。

如果参数status值为0或者EXIT_SUCCESS,返回成功终止状态的实现定义形式;如果参数status值为EXIT_FAILURE,返回不成功终止状态的实现定义形式;否则返回状态由实现定义。

程序终止时,未写入的缓冲数据是否刷新、打开的流是否关闭以及临时文件是否删除将由实现定义。


参数:
int status

状态代码,说明程序的退出状态。


返回值:

函数不能返回给它的调用者。


范例:
1 
2 
3 
4 
5 
6 
7 
8 
9 
10 
11 
12 
13 
14 
15 
16 
17 
18 
19 
20 
21 
/*函数_Exit范例*/

#include <stdio.h>
#include <stdlib.h>

int main(void)
{
    FILE *pFile;

    pFile = fopen("abc.txt", "r");
    if(pFile==NULL)
    {
        perror("Error opening file");
        _Exit(EXIT_FAILURE);
    }

    fclose(pFile);
    
    _Exit(EXIT_SUCCESS);
}


结果:

假设名为abc.txt的文件不存在,将输出:

Error opening file: no such file or directory

然后调用_Exit(EXIT_FAILURE)函数终止程序。

假设名为abc.txt的文件存在,将调用_Exit(EXIT_SUCCESS)函数终止程序。


相关内容:
abort 异常终止程序的函数。
exit 正常终止程序的函数。
quick_exit 正常终止程序的函数。