エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
記事へのコメント1件
- 注目コメント
- 新着コメント
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
SIG33-C. raise() 関数を再帰的に呼び出さない
C99 では raise() 関数を再帰的に呼び出すことは認められていない。C99 のセクション7.14.1.1#4 [ISO/IE... C99 では raise() 関数を再帰的に呼び出すことは認められていない。C99 のセクション7.14.1.1#4 [ISO/IEC 9899:1999] は以下のように規定している。 シグナルが、abort 関数又は raise 関数の呼出しの結果として発生する場合、シグナル処理ルーチンは、raise 関数を呼び出してはならない。 違反コード 以下のコード例では、handler() 関数を使って SIGINT に対応する処理を実行し、次に SIGUSR1 を発生させ割り込みのログを記録する。しかし、raise() 関数を再帰的に呼び出しており、未定義の動作となる。 #include <signal.h> void log_msg(int signum) { /* async-safe なエラー記録ルーチン */ } void handler(int signum) { /* SIGIN
2009/09/01 リンク