標頭檔案

<csignal> (signal.h)

用於處理訊號的 C 庫
一些執行環境使用訊號來通知正在執行的程序某些事件的發生。這些事件可能與程式程式碼執行的錯誤有關,例如錯誤的算術運算,或與異常情況有關,例如中斷程式的請求。

訊號通常表示程式已被請求終止或發生了不可恢復的錯誤,因此處理訊號允許執行終止前的清理操作或嘗試以某種方式從錯誤中恢復。

並非所有執行環境都需要在標準 C 庫為其設計的情況下自動生成訊號,而其他一些環境不僅生成這些訊號,還會生成更多特定的訊號。但無論如何,所有透過呼叫 raise 函式顯式生成的訊號都會被傳遞到其對應的訊號處理程式。

函式


型別


宏常量

型別signal
int (訊號)SIGABRT(Signal Abort) 異常終止,例如由 abort 函式發起的終止。
SIGFPE(Signal Floating-Point Exception) 錯誤的算術運算,例如除以零或導致溢位的運算(不一定與浮點運算有關)。
SIGILL(Signal Illegal Instruction) 無效的函式映像,例如非法指令。這通常是由於程式碼損壞或嘗試執行資料所致。
SIGINT(Signal Interrupt) 互動式注意訊號。通常由應用程式使用者生成。
SIGSEGV(Signal Segmentation Violation) 對儲存的無效訪問:當程式試圖在其已分配的記憶體之外進行讀取或寫入時。
SIGTERM(Signal Terminate) 傳送給程式的終止請求。
函式 (處理程式)SIG_DFL預設處理:訊號由該特定訊號的預設操作處理。
SIG_IGN忽略訊號:該訊號被忽略。
SIG_ERR表示失敗的特殊返回值。

有關更多資訊,請參閱 signal 函式。