HOME > Linux Tips ( 目次 ) > Linux コマンド 一覧表 > a > assert_perror - ライブラリコールの説明

assert_perror - ライブラリコールの説明 - Linux コマンド集 一覧表

  1. 名前
  2. 書式
  3. 説明
  4. 返り値
  5. 準拠
  6. バグ
  7. 関連項目

名前

assert_perror - test errnum and abort

書式

#define _GNU_SOURCE#include <assert.h>

void assert_perror(int errnum);

説明

最後に <assert.h> がインクルードされた時にマクロ NDEBUG が定義されていた場合、マクロ assert_perror ()は何のコードも生成せず、したがって全く何もしない。 そうでない場合、マクロ assert_perror ()は標準出力にエラー・メッセージを表示し、 errnum が 0 でない場合には abort ()を呼び出してプログラムを終了させる。 メッセージには、ファイル名、マクロ呼び出しがあった関数名と行番号、 strerror(errnum) の出力が含まれる。

返り値

返り値はない。

準拠

これは GNU による拡張である。

バグ

assert マクロの目的は、プログラマがプログラム中のバグを探す手助けをすること であり、コーディング間違いがない場合には何が起こることはありえない。 しかしながら、システムコールやライブラリコールの場合、状況がかなり違っていて、 エラーが返されることがありえるし、実際あるだろう。そしてそのような状況でも テストされるべきである。この場合には、NDEBUG を定義することで無効にできる assert ではなく、適切なエラー処理コードで対処すべきである。 このマクロは決して使わないこと。

関連項目

Linux Tips 関連記事
Linux Tips(目次)
Linux ディストリビューション一覧
rpm のファイル名にあるi386とかi686とは
自分のマシンの情報を調べる
cron の設定
ssh の root ログインを禁止する
ssh を、ユーザ、IPでアクセス制限
鍵交換方式によるssh接続
鍵交換方式によるssh接続( windowsから )
複数ファイル内の文字列を置換して上書き保存する
あるグループをイニシャルグループとするユーザー一覧出力
複数ファイルのファイル名を一括変換する
連番ファイルをコマンド一発で作成する
中身がランダムなファイルを任意のサイズで作成する
Linux ユーザーアカウントをロック・アンロックする