atexit

来自cppreference.com
< c‎ | program

在头文件 <stdlib.h> 中定义
int atexit( void (*func)() );
注册所指向的函数被称为正常的程序终止func(通过exit(),或从main()返回).
原文:
Registers the function pointed to by func to be called on normal program termination (via exit() or returning from main()).
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
从多个线程中调用的函数不会导致数据争用。的实施应支持至少32功能的注册.
原文:
Calling the function from several threads does not induce a data race. The implementation shall support the registration of at least 32 functions.
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

目录

[编辑] 参数

func -
指针到函数的调用,正常的程序终止
原文:
pointer to a function to be called on normal program termination
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

[编辑] 返回值

0如果注册成功,非零值,否则.....
原文:
0 if the registration succeeds, nonzero value otherwise.
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

[编辑] 例外

noexcept specification:  
noexcept
  (C++11 起)

[编辑] 为例

#include <stdlib.h>
#include <stdio.h>
 
void f1()
{
    puts("pushed first");
}
 
void f2()
{
    puts("pushed second");
}
 
int main()
{
    atexit(f1);
    atexit(f2);
}

输出:

pushed second
pushed first

[编辑] 另请参阅

注册一个函数使其在调用quick_exit时被调用
(函数) [edit]