程序的終止

2021-07-10 07:31:30 字數 684 閱讀 6427

通常採用exit來結束乙個程序

相應的函式呼叫為:

#include

void exit(int status);

int atexit(void(*function)(void));

int on_exit(void(*function)(int void*),void *arg);

void abort(void);

#include

void _exit(int status);

#incldue

void assert(int expression)

exit---標準庫中的c函式,用來終止正在執行的程式,關閉所有屬於該程序開啟的檔案描述符。

atexit---用於註冊乙個不帶引數/也沒有返回值的函式,供程式正常退出時被呼叫,引數function時指向所呼叫程式的函式指標(呼叫成功,返回值為0;失敗時,返回值為-1)

on_exit---與atexi作用類似,但是它註冊的函式是有引數的,退出狀態與引數arg都是傳遞給該程式使用的(返回值與atexit時一致)

abort---用來傳送sigabrt訊號,這個訊號可以使當前程序終止。

_exit---用於結束乙個程序,用於關閉linux下特有的退出控制代碼。

assert---巨集,呼叫時,計算experssion的值,如果expression=0,則呼叫該函式。

程序的終止

系統呼叫exit 實現程序的終止。exit 在linux系統函式庫stdlib.h中的函式宣告如下 void exit int status exit 只有乙個引數status,稱作程序的退出狀態,父程序可以使用它的低8位。exit 的返回值通常用於指出程序所完成任務的成敗。如果成功,則返回0 如果...

程序的終止

有五種方法使程序終止 1.正常終止 1 在main函式內執行return語句,這等效於呼叫exit。2 呼叫exit函式。此函式由ansi c定義,其操作包括呼叫各終止處理程式,然後關閉所有標準i o流等。3 呼叫 exit系統呼叫函式,此函式由exit呼叫。2.異常終止 1 呼叫abort。2 由...

終止程序的內幕

原文 http blog user17 pjf blog 4213145.html pjf jfpan20000 sina.有來信詢問程序結束的有關問題,下面就這個問題簡單討論一下 下面的討論基於2000,其他nt系統也類似 首先看看乙個應用程式想要強制結束另乙個程序所要做的事 首先獲得目標的程序i...