Cライブラリ-<signal.h>
ザ・ signal.h ヘッダーは変数タイプを定義します sig_atomic_t、2つの関数呼び出し、およびプログラムの実行中に報告されたさまざまなシグナルを処理するためのいくつかのマクロ。
ライブラリ変数
以下は、ヘッダーシグナルで定義された変数タイプです。h−
シニア番号 | 変数と説明 |
---|---|
1 | sig_atomic_t これは intタイプであり、シグナルハンドラーの変数として使用されます。これは、非同期信号が存在する場合でも、アトミックエンティティとしてアクセスできるオブジェクトの整数型です。 |
ライブラリマクロ
以下は、ヘッダーsignal.hで定義されているマクロであり、これらのマクロは、以下にリストされている2つの関数で使用されます。ザ・SIG_ マクロは、シグナル関数とともに使用され、シグナル関数を定義します。
シニア番号 | マクロと説明 |
---|---|
1 | SIG_DFL デフォルトのシグナルハンドラ。 |
2 | SIG_ERR 信号エラーを表します。 |
3 | SIG_IGN 信号は無視します。 |
ザ・ SIG マクロは、次の条件で信号番号を表すために使用されます-
シニア番号 | マクロと説明 |
---|---|
1 | SIGABRT プログラムの異常終了。 |
2 | SIGFPE ゼロ除算のような浮動小数点エラー。 |
3 | SIGILL 違法な操作。 |
4 | SIGINT ctrl-Cなどの割り込み信号。 |
5 | SIGSEGV セグメント違反などのストレージへの無効なアクセス。 |
6 | SIGTERM 終了リクエスト。 |
ライブラリ関数
以下は、ヘッダーシグナルで定義されている関数です。h−
シニア番号 | 機能と説明 |
---|---|
1 | void(* signal(int sig、void(* func)(int)))(int) この関数は、信号を処理する関数、つまり信号ハンドラーを設定します。 |
2 | int raise(int sig) この関数は信号を発生させます sig生成されます。sig引数はSIGマクロと互換性があります。 |