跳转到内容

atexit : 请求在程序退出时执行函数

#include <stdlib.h>
int atexit(void (*function)(void);
```### Description
您可以使用 atexit 将函数注册到一个函数列表中,这些函数将在您的程序正常终止时被调用。该参数是一个指向用户自定义函数的指针(该函数不得需要参数,且不得返回结果)。这些函数保存在一个后进先出(LIFO)栈中;也就是说,由 atexit 注册的最后一个函数将在程序退出时首先执行。您可以注册到此列表中的函数数量没有内置限制;但是,在每注册一组 32 个函数后,atexit 将调用 malloc 来为列表的下一部分获取空间。初始的 32 个函数列表是静态分配的,因此您始终可以确信至少有这么多可用插槽。### Returns
如果成功注册了您的函数,atexit 将返回 0;如果失败,则返回 -1(仅当 malloc 没有可用空间来扩展函数列表时才可能发生)。
---
**权威来源**: BUSMASTER DITA help source `atexit.dita`, compiled into `BUSMASTER.CHM` with the application.