名稱空間
變體
操作

raise

來自 cppreference.com
< c‎ | program
定義於標頭檔案 <signal.h>
int raise( int sig );

傳送訊號 sig 給程式。將呼叫使用 signal() 指定的訊號處理程式。

如果尚未透過 signal() 設定使用者定義的訊號處理策略,則訊號是否被忽略或是否呼叫預設處理程式是實現定義的。

目錄

[編輯] 引數

sig - 要傳送的訊號。它可以是實現定義的值或以下值之一
定義訊號型別
(宏常量) [編輯]

[編輯] 返回值

成功時返回 0,失敗時返回非零值。

[編輯] 示例

#include <signal.h>
#include <stdio.h>
 
void signal_handler(int signal)
{
    printf("Received signal %d\n", signal);
}
 
int main(void)
{
    // Install a signal handler.
    signal(SIGTERM, signal_handler);
 
    printf("Sending signal %d\n", SIGTERM);
    raise(SIGTERM);
    printf("Exit main()\n");
}

輸出

Sending signal 15
Received signal 15
Exit main()

[編輯] 參考

  • C17 標準 (ISO/IEC 9899:2018)
  • 7.14.2.1 The raise function (p: 194-195)
  • C11 標準 (ISO/IEC 9899:2011)
  • 7.14.2.1 The raise function (p: 267)
  • C99 標準 (ISO/IEC 9899:1999)
  • 7.14.2.1 The raise function (p: 248)
  • C89/C90 標準 (ISO/IEC 9899:1990)
  • 4.7.2.1 The raise function

[編輯] 另請參閱

為特定訊號設定訊號處理程式
(函式) [編輯]
C++ 文件,關於 raise