當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


C語言 at_quick_exit用法及代碼示例


C語言stdlib頭文件(stdlib.h)中at_quick_exit函數的用法及代碼示例。

用法:

int at_quick_exit (void (*func)(void));
extern "C" int at_quick_exit (void (*func)(void)) noexcept;
extern "C++" int at_quick_exit (void (*func)(void)) noexcept;
設置要在快速退出時執行的函數
所指向的函數func在以下情況下會自動調用(不帶參數)quick_exit叫做。

如果不止一個at_quick_exit已通過對該函數的不同調用指定了該函數,它們全部以相反的順序執行。

如果函數已注冊at_quick_exit拋出一個異常,在被調用時它不提供處理程序quick_exitterminate被自動稱為(C++)。

請注意at_quick_exit函數堆棧與atexit堆棧(並且每個都由不同的情況觸發),但是可以將相同的函數傳遞給兩個函數,以便在兩種情況下都可以調用它。

特定的庫實現可能會限製可以向其注冊的函數的數量at_quick_exit,但不能少於32個函數。

參數

function
要調用的函數。該函數應不返回任何值且不接受任何參數。

返回值

如果該函數已成功注冊,則返回零值。
如果失敗,則返回非零值。

示例

/* at_quick_exit example */
#include <stdio.h>      /* puts */
#include <stdlib.h>     /* at_quick_exit, quick_exit, EXIT_SUCCESS */

void fnQExit (void)
{
  puts ("Quick exit function.");
}

int main ()
{
  at_quick_exit (fnQExit);
  puts ("Main function: Beginning");
  quick_exit (EXIT_SUCCESS);
  puts ("Main function: End");  // never executed
  return 0;
}


輸出:

Main function: Beginning
Quick exit function.



相關用法


注:本文由純淨天空篩選整理自C標準庫大神的英文原創作品 C at_quick_exit function。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。