C言語assertの使い方
assertマクロのプロトタイプ定義はでは、その条件がエラーを返すとプログラム実行を終了し、プロトタイプ定義:#includevoid assert( int expression );
assertの役割は、計算式expressionであり、値が偽(すなわち0)の場合、stderrにエラー情報を印刷し、abortを呼び出してプログラムの実行を終了することです.
次のプログラムリストを見てください.c:
マクロ名:assert
機能:条件をテストし、プログラムを終了させる可能性があります.
使用法:void assert(int test);
プログラム例:
assert()マクロの使い方
注意:assertは関数ではなくマクロです.Cのassert.hヘッダファイルにあります.
assertマクロのプロトタイプ定義はでは、条件がエラーを返すと、プログラムの実行が終了し、プロトタイプ定義が次のように機能します.
assertの役割は、式expressionを先に計算し、値が偽(すなわち0)の場合、標準エラーストリームstderrにエラー情報を印刷し、abortを呼び出してプログラムの実行を終了することです.そうしないと、assert()は何の役割もありません.マクロassert()は、通常、プログラムの正常な動作を確認するために使用されます.式の構成が間違っていない場合にのみ真の値になります.デバッグが完了すると、マクロNDEBUGに定義がある場合、マクロassert()の定義が空になるため、ソースコードからassert()文を削除する必要はありません.
assertの役割は、計算式expressionであり、値が偽(すなわち0)の場合、stderrにエラー情報を印刷し、abortを呼び出してプログラムの実行を終了することです.
次のプログラムリストを見てください.c:
#include <stdio.h>
#include <assert.h>
#include <stdlib.h>
int main( void )
{
FILE *fp;
fp = fopen( "test.txt", "w" );// ,
assert( fp ); //
fclose( fp );
fp = fopen( "noexitfile.txt", "r" );// ,
assert( fp ); //
fclose( fp ); //
return 0;
}
マクロ名:assert
機能:条件をテストし、プログラムを終了させる可能性があります.
使用法:void assert(int test);
プログラム例:
#include <assert.h>
#include <stdio.h>
#include <stdlib.h>
struct ITEM {
int key;
int value;
};
/* add item to list, make sure list is not null */
void additem(struct ITEM *itemptr) {
assert(itemptr != NULL);
/* add item to list */
}
int main(void)
{
additem(NULL);
return 0;
}
assert()マクロの使い方
注意:assertは関数ではなくマクロです.Cのassert.hヘッダファイルにあります.
assertマクロのプロトタイプ定義は
#include <assert.h>
void assert( int expression );
assertの役割は、式expressionを先に計算し、値が偽(すなわち0)の場合、標準エラーストリームstderrにエラー情報を印刷し、abortを呼び出してプログラムの実行を終了することです.そうしないと、assert()は何の役割もありません.マクロassert()は、通常、プログラムの正常な動作を確認するために使用されます.式の構成が間違っていない場合にのみ真の値になります.デバッグが完了すると、マクロNDEBUGに定義がある場合、マクロassert()の定義が空になるため、ソースコードからassert()文を削除する必要はありません.