_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