©
Ce document utiliseManuel du site Web PHP chinoisLibérer
在头文件 |
|
|
---|---|---|
void abort(void); |
|
(直到C11) |
_Noreturn void abort(void); |
|
(自C11以来) |
除非SIGABRT
被传递给signal的信号处理程序捕获并且处理程序不返回,否则会导致程序异常终止。
传递给atexit()的函数不会被调用。 是否关闭文件等开放资源是实现定义的。 实现定义的状态返回到指示不成功执行的主机环境。
(none).
(none).
#include#include int main(void) { FILE *fp = fopen("data.txt","r"); if (fp == NULL) { fprintf(stderr, "error opening file data.txt in function main()\n"); abort(); } /* Normal processing continues here. */ fclose(fp); printf("Normal Return\n"); return 0;}
输出:
error opening file data.txt in function main()
C11标准(ISO / IEC 9899:2011):
7.22.4.1中止功能(p:350)
C99标准(ISO / IEC 9899:1999):
7.20.4.1中止功能(p:315)
C89 / C90标准(ISO / IEC 9899:1990):
4.10.4.1中止功能
exit |
导致正常程序终止并清理(功能) |
---|---|
atexit对 |
注册要在exit()调用(函数)上调用的函数 |
quick_exit(C11) |
导致正常程序终止而没有完全清理(功能) |
| 用于中止的C ++文档|