C言語編 標準ライブラリのリファレンス SIGFPE

先頭へ戻る

SIGFPE

概要 浮動小数点例外のシグナルを表すシグナル番号。
ヘッダ signal.h
形式 #define SIGFPE 8
置換結果 ほかのシグナルのシグナル番号とは異なる値になる、int型の定数式。必ず正の値である。
詳細 例えば、ゼロ除算やオーバーフローの発生のような、誤った算術演算を行ったことを表すシグナル番号。ただし、正確な意味の定義は、処理系に任されている。
このシグナルが発生したときのデフォルトの動作は、処理系定義である。
注意 SIGFPE の発生によって呼び出されたシグナルハンドラから戻る行為は未定義の動作である。
使用例
#include <float.h>
#include <stdio.h>
#include <stdlib.h>
#include <signal.h>

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

int main(void)
{
    double x = 100.0;
    double y = 0.0;

#if defined(_MSC_VER)
    /* 浮動小数点例外を許可 */
    _control87( 0, _MCW_EM );
#endif

    signal( SIGFPE, signal_handler );

    printf( "%lf\n", x / y );

    return 0;
}

実行結果


	
関連 シグナル番号は、signal関数raise関数で使用する。
解説章


参考リンク



更新履歴

'2018/4/24 新規作成。



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

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

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

Programming Place Plus のトップページへ


はてなブックマーク Pocket に保存 Twitter でツイート Twitter をフォロー
Facebook でシェア Google+ で共有 LINE で送る rss1.0 取得ボタン RSS
管理者情報 プライバシーポリシー