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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。