日本-日本語
日本HPホーム 製品 & サービス OpenVMS製品情報
≫  お問い合わせ


OpenVMS マニュアル


 

OpenVMS ドキュメント
ライブラリ

タイトル
目次
まえがき
リファレンス・セクション
   ≫ライブラリ関数一覧
索引
PDF
OpenVMS ホーム

HP OpenVMS
HP C ランタイム・ライブラリ・リファレンス・マニュアル (下巻)


目次 索引




プログラムで実行時診断機能を実相するために使用します。

形式

#include <assert.h>

void assert (int expression);


引数



expression

int型の式。

説明

assertを実行したときに,expression が False である (つまり 0 に評価される) 場合は, assertは異常終了した特定の呼び出しに関する情報 ( 引数のテキスト,ソース・ファイルの名前,ソース行番号などで,最後の 2 つはそれぞれ前処理マクロ __FILE__および __LINE__の値 ) を,実装で定義されている形式で標準エラー・ファイルに書き込みます。その後, abort関数を呼び出します。

assert関数は次の形式でメッセージを書き込みます。

Assertion failed:  expression, file aaa, line nnn

expression が True である ( つまり 0 以外の値に評価される ) 場合や,シグナル SIGABRT が無視されている場合は, assertは値を返しません。

  注意
送出される式の一部にヌル文字 ('\0') が含まれている場合は,ヌル文字までのテキスト (ヌル文字を含む) だけが印刷されます。これは,ヌル文字が文字列の出力を終了するからです。

#include assert文より前にプリプロセッサ・ディレクティブ #defineNDEBUG を指定するか,または CC コマンド修飾子 /DEFINE=NDEBUG を指定してコンパイルすると, assert関数は無効になります。


#include <stdio.h> 
#include <assert.h> 
 
main() 
{ 
    printf("Only this and the assert\n"); 
    assert(1 == 2);     /* expression is FALSE */ 
 
    /* abort should be called so the printf will not happen. */ 
 
    printf("FAIL abort did not execute"); 
} 


目次 索引

© 2012 Hewlett-Packard Development Company, L.P.