atexit
stdlib.h:インデックス への移動
ヘッダーファイル
stdlib.h
カテゴリ
プロセス制御ルーチン
プロトタイプ
int atexit(void (_USERENTRY * func)(void));
説明
終了関数を登録します。
atexit は,func で示された関数を終了関数として登録します。プログラムが正常終了する場合,exit は,オペレーティングシステムに戻る直前に func を呼び出します。func では,_USERENTRY 呼び出し規約を使用する必要があります。
atexit を呼び出すたびに,別の終了関数が登録されます。最大 32 個の関数を登録できます。これらの関数は,後入れ先出しで実行されます。つまり,最後に登録された関数が最初に実行されます。
戻り値
atexit は,成功した場合は 0 を返し,失敗した(それ以上関数を登録できない)場合は 0 以外の値を返します。
例
#include <stdio.h>
#include <stdlib.h>
void exit_fn1(void)
{
printf("Exit function #1 called\n");
}
void exit_fn2(void)
{
printf("Exit function #2 called\n");
}
int main(void)
{
/* 終了関数 #1 を登録します */
atexit(exit_fn1);
/* 終了関数 #2 を登録します */
atexit(exit_fn2);
return 0;
}
移植性
POSIX | Win32 | ANSI C | ANSI C++ |
---|---|---|---|
+ |
+ |
+ |
+ |