raise | Programming Place Plus C言語編 標準ライブラリのリファレンス

トップページC言語編標準ライブラリのリファレンス(名前順)

トップページC言語編標準ライブラリのリファレンス(ヘッダ別)


raise関数

概要

シグナルを発生させる。

ヘッダ

signal.h

形式

int raise(int sig);

引数

sig

シグナル番号。

戻り値

成功したときは 0、失敗したときは 0以外を返す。

詳細

引数sig で指定するシグナルを発生させる。この値は、標準で定義された以下の6個か、処理系が独自に定義する値のいずれかである。

値 意
SIGABRT abort関数の呼び出しによって起こる異常終了
SIGFPE ゼロ除算のような、誤った算術演算。
SIGILL コンピュータの不正命令によって起こるエラー。
SIGINT Ctrl+C の入力のような、ユーザーとの対話によって起こるシグナル。
SIGSEGV メモリの不正アクセス。
SIGTERM 別プログラムやユーザーからの終了シグナル。

発生したシグナルによって、シグナルハンドラが呼び出された場合、シグナルハンドラ内から戻るまで、raise関数から戻ることはない。

注意

使用例

#include <stdlib.h>
#include <signal.h>

void signal_handler(int signum)
{
    abort();
}

int main(void)
{
    signal(SIGILL, signal_handler);
    raise(SIGILL);
}

実行結果

関連

シグナル発生時の動作を、signal関数によって設定できる。

解説章


参考リンク


更新履歴

’2018/4/24 「使用例」を変更。

’2018/4/14 シグナルハンドラの実行を終えるまで制御が戻らない旨を追記。

’2018/1/22 新規作成。



標準ライブラリのリファレンス(名前順)のトップページへ

標準ライブラリのリファレンス(ヘッダ別)のトップページへ

C言語編のトップページへ

Programming Place Plus のトップページへ



はてなブックマーク に保存 Pocket に保存 Facebook でシェア
X で ポストフォロー LINE で送る noteで書く
rss1.0 取得ボタン RSS 管理者情報 プライバシーポリシー
先頭へ戻る