quick_exit
From cppreference.com
| ヘッダー <stdlib.h> で定義 |
||
_Noreturn void quick_exit( int exit_code ); |
(C11 以降) (C23まで) |
|
| [[noreturn]] void quick_exit( int exit_code ); |
(C23以降) | |
リソースを完全にクリーンアップすることなく、プログラムの正常終了を引き起こします。
at_quick_exit に渡された関数は、登録された順序の逆順に呼び出されます。登録された関数を呼び出した後、_Exit(exit_code) が呼び出されます。
atexit に渡された関数や、signal に渡されたシグナルハンドラは呼び出されません。
目次 |
[編集] パラメータ
| exit_code | - | プログラムの終了ステータス |
[編集] 戻り値
(なし)
[編集] 例
このコードを実行
#include <stdlib.h> #include <stdio.h> void f1(void) { puts("pushed first"); fflush(stdout); } void f2(void) { puts("pushed second"); } void f3(void) { puts("won't be called"); } int main(void) { at_quick_exit(f1); at_quick_exit(f2); atexit(f3); quick_exit(0); }
出力
pushed second pushed first
[編集] 参考文献
- C17標準 (ISO/IEC 9899:2018)
- 7.22.4.7 The quick_exit function (p: 257)
- C11標準 (ISO/IEC 9899:2011)
- 7.22.4.7 The quick_exit function (p: 353)
[編集] 関連項目
| (クリーンアップせずに)異常なプログラム終了を引き起こす (関数) | |
| exit() の呼び出し時に呼ばれる関数を登録する (関数) | |
| (C11) |
quick_exit 呼び出し時に実行される関数を登録します。 (関数) |
| C++ ドキュメント ( quick_exit )
| |