非常教程

C参考手册

编程支持 | Program support

at_quick_exit

在头文件<stdlib.h>中定义

int at_quick_exit(void(* func)(void));

(自C11以来)

注册由func指向的函数,在快速程序终止时(通过quick_exit)调用。

从多个线程调用该函数不会导致数据竞争。 实施应支持至少32项功能的注册。

参数

func

-

指向正常程序终止时要调用的函数的指针

返回值

如果注册成功,则返回0;否则为非零值。

#include <stdlib.h>
#include <stdio.h>
 
void f1(void)
{
    puts("pushed first");
    fflush(stdout);
}
 
void f2(void)
{
    puts("pushed second");
}
 
int main(void)
{
    at_quick_exit(f1);
    at_quick_exit(f2);
    quick_exit(0);
}

输出:

pushed second
pushed first

参考

  • C11标准(ISO / IEC 9899:2011):
    • 7.22.4.3 at_quick_exit函数(p:351)

扩展内容

atexit

注册要在exit()调用(函数)上调用的函数

|用于at_quick_exit的 C ++文档|

C

C 语言是一门通用计算机编程语言,应用广泛。C 语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。