C语言stdlib头文件(stdlib.h)中atexit函数的用法及代码示例。
用法:
int atexit (void (*func)(void));
extern "C" int atexit (void (*func)(void)); extern "C++" int atexit (void (*func)(void));
设置要在退出时执行的函数
如果不止一个atexit函数是通过对该函数的不同调用指定的,它们都以相反的顺序作为堆栈执行(即,指定的最后一个函数是在退出时第一个执行的函数)。
可以注册一个函数以在退出处执行一次以上。
如果atexit被称为exit,则调用是否成功取决于具体的系统和库的实现(未指明的行为)。
如果函数已注册atexit引发异常,在终止调用时它不提供处理程序,terminate被自动称为(C++)。
特定的库实现可能会限制可以向其注册的函数调用的数量atexit,但不能少于32个函数调用。
参数
- function
- 要调用的函数。该函数应不返回任何值且不接受任何参数。
返回值
如果该函数已成功注册,则返回零值。如果失败,则返回非零值。
示例
/* atexit example */
#include <stdio.h> /* puts */
#include <stdlib.h> /* atexit */
void fnExit1 (void)
{
puts ("Exit function 1.");
}
void fnExit2 (void)
{
puts ("Exit function 2.");
}
int main ()
{
atexit (fnExit1);
atexit (fnExit2);
puts ("Main function.");
return 0;
}
输出:
Main function. Exit function 2. Exit function 1. |
相关用法
- C语言 atof用法及代码示例
- C语言 atoi用法及代码示例
- C语言 atol用法及代码示例
- C语言 atoll用法及代码示例
- C语言 strtod用法及代码示例
- C语言 strtof用法及代码示例
- C语言 strtol用法及代码示例
- C语言 strtold用法及代码示例
- C语言 strtoll用法及代码示例
- C语言 strtoul用法及代码示例
- C语言 strtoull用法及代码示例
- C语言 rand用法及代码示例
- C语言 srand用法及代码示例
- C语言 calloc用法及代码示例
- C语言 free用法及代码示例
- C语言 malloc用法及代码示例
- C语言 realloc用法及代码示例
- C语言 abort用法及代码示例
- C语言 at_quick_exit用法及代码示例
- C语言 exit用法及代码示例
- C语言 getenv用法及代码示例
- C语言 quick_exit用法及代码示例
- C语言 system用法及代码示例
- C语言 _Exit用法及代码示例
- C语言 bsearch用法及代码示例
- C语言 qsort用法及代码示例
- C语言 abs用法及代码示例
- C语言 div用法及代码示例
- C语言 labs用法及代码示例
- C语言 ldiv用法及代码示例
- C语言 llabs用法及代码示例
- C语言 lldiv用法及代码示例
- C语言 mblen用法及代码示例
- C语言 mbtowc用法及代码示例
- C语言 wctomb用法及代码示例
- C语言 wcstombs用法及代码示例
注:本文由纯净天空筛选整理自C标准库大神的英文原创作品 C atexit function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。