函式名: atexit
標頭檔案:#include
功 能: 註冊終止函式(即main執行結束後呼叫的函式)
用 法: int atexit(void (*func)(void));
按照iso c的規定,乙個程序可以登記多達32個函式,這些函式將由exit自動呼叫。atexit()註冊的函式型別應為不接受任何引數的void函式,exit呼叫這些註冊函式的順序與它們 登記時候的順序相反。同乙個函式如若登記多次,則也會被呼叫多次。
有8種方式使程序終止,其中前5種為正常終止,它們是
1:從 main 返回
2:呼叫 exit
3:呼叫 _exit 或 _exit
4:最後乙個執行緒從其啟動例程返回
5:最後乙個執行緒呼叫 pthread_exit
異常終止有3種,它們是
6:呼叫 abort
7:接到乙個訊號並終止
8:最後乙個執行緒對取消請求做出響應
atexit()函式呼叫註冊的順序
按照iso c的規定,乙個程序可以登記至少32個函式,這些函式將由exit自動呼叫。乙個程序可以登記若干個函式,這些函式由 exit自 動呼叫,這些函式被稱為終止處理函式,atexit 函式可以登記這些 函式。exit 呼叫終止處理函式的順 序和atexit 登記的順序相反,如果乙個函式被多次登記,...
atexit函式詳解
對c語言有所了解的人都知道main函式是整個程式的入口,但是其實不然,在核心中可以使用鏈結器來設定程式的開始地方。當核心使 個exec函式執 c程式時,在調 main函式之前先調 個特殊的啟動例程,可執 程式將此例程指定為程式的起始位址。啟動例程從核心獲取命令 引數和環境變數,然後為調 main函式...
atexit函式簡介
按照iso c的規定,乙個程序可以登記多達32個函式,這些函式將由exit自動呼叫.通常這32個函式被稱為終止處理程式,並呼叫atexit函式來登記這些函式,atexit 註冊的函式型別應為不接受任何引數的void函式,當程式通過呼叫exit 或從main 中返回時,引數function 所指定的函...