Share via


_cexit, _c_exit

執行清除作業,並傳回而不終止處理序。

語法

void _cexit( void );
void _c_exit( void );

備註

_cexit 函式會以後進先出 (LIFO) 的順序呼叫 atexit_onexit 所註冊的函式。 _cexit 接著會清除所有 I/O 緩衝區,並在傳回之前關閉所有開啟的資料流。 _c_exit_exit 相同,但傳回到呼叫處理序,而不處理 atexit_onexit 或者清除資料流緩衝區。 、 _exit_cexit_c_exit 的行為 exit 如下表所示。

函式 行為
exit 執行完整的 C 程式庫終止程序,並終止處理序,然後因提供的狀態碼而結束。
_exit 執行快速 C 程式庫終止程序,並終止處理序,然後因提供的狀態碼而結束。
_cexit 執行完整的 C 程式庫終止程式,並傳回給呼叫端,但不會終止進程。
_c_exit 執行快速 C 程式庫終止程式,並返回呼叫端,但不會終止進程。

當您呼叫 _cexit_c_exit 函式時,不會呼叫呼叫時存在之任何暫存或自動物件的解構函式。 自動物件是在未宣告為靜態物件的函式中定義的 物件。 暫存物件是編譯器所建立的物件。 若要先終結自動物件,再呼叫 _cexit_c_exit,請明確地呼叫該物件的解構函式,如下所示:

myObject.myClass::~myClass( );

根據預設,此函式的全域狀態會限定于應用程式。 若要變更此行為,請參閱 CRT 中的全域狀態。

需求

常式 必要的標頭
_cexit <process.h>
_c_exit <process.h>

如需相容性詳細資訊,請參閱相容性

另請參閱

進程和環境控制
abort
atexit
_exec_wexec 函式
exit, _Exit, _exit
_onexit, _onexit_m
_spawn_wspawn 函式
system, _wsystem