命名空间
变体
操作

_Exit

来自 cppreference.com
< c‎ | program
定义在头文件 <stdlib.h>
void _Exit( int exit_code );
(自 C99 起)
(直到 C11)
_Noreturn void _Exit( int exit_code );
(自 C11 起)
(直到 C23)
[[noreturn]] void _Exit( int exit_code );
(自 C23 起)

导致正常程序终止,但不会完全清理资源。

传递给 at_quick_exit()atexit() 的函数不会被调用。是否刷新具有未写入缓冲数据的打开流、关闭打开流或删除临时文件是实现定义的。

如果 exit_code0EXIT_SUCCESS,则向主机环境返回一个实现定义的状态,该状态指示成功终止。如果 exit_codeEXIT_FAILURE,则返回一个实现定义的状态,指示不成功终止。在其他情况下,将返回一个实现定义的状态值。

内容

[编辑] 参数

exit_code - 程序的退出状态

[编辑] 返回值

(无)

[编辑] 示例

#include <stdlib.h>
#include <stdio.h>
 
/* _Exit does not call functions registered with atexit. */
void f1(void)
{
    puts("pushed first");
}
 
void f2(void)
{
    puts("pushed second");
}
 
int main(void)
{
    printf("Enter main()\n");
    atexit(f1);
    atexit(f2);
    fflush(stdout);   /* _Exit may not flush unwritten buffered data */
    _Exit(0);
}

输出

Enter main()

[编辑] 参考资料

  • C17 标准 (ISO/IEC 9899:2018)
  • 7.22.4.5 _Exit 函数 (p: 256)
  • C11 标准 (ISO/IEC 9899:2011)
  • 7.22.4.5 _Exit 函数 (p: 352)
  • C99 标准 (ISO/IEC 9899:1999)
  • 7.20.4.4 _Exit 函数 (p: 316)

[编辑] 另请参见

导致异常程序终止(不清理)
(函数) [编辑]
导致正常程序终止并清理
(函数) [编辑]
C++ 文档 for _Exit