©
This document uses PHP Chinese website manual Release
void _Exit(int exit_code); | (自C99开始)(直到C11) | |
---|---|---|
_Noreturn void _Exit(int exit_code); | (自C11以来) |
导致正常的程序终止发生,而没有完全清理资源。
不会调用具有自动线程本地和静态存储持续时间的变量析构函数。 传递给at_quick_exit()或atexit()的函数不会被调用。 是否关闭文件等开放资源是实现定义的。 如果exit_code为EXIT_FAILURE,则返回实现定义的状态,表示终止不成功。 在其他情况下,返回实现定义的状态值。
exit_code | - | 退出程序的状态 |
---|
(none).
#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 does not flush unwritten buffered data */ _Exit(0);}
输出:
Enter main()
C11标准(ISO / IEC 9899:2011):
7.22.4.5 _Exit函数(p:352)
C99标准(ISO / IEC 9899:1999):
7.20.4.4 _Exit函数(p:316)
abort | 导致程序异常终止(不清除)(功能) |
---|---|
exit | 导致正常程序终止并清理(功能) |
| 用于_Exit的C ++文档 |