wconv_setnumsignchkについて説明します。
名前
wconv_setnumsignchk - 数値データ項目の符号チェックの有効/無効を指定する
形式
int wconv_setnumsignchk(wconv_t wd, int fcheck, FLDTYPE type );
wd wconv_open、またはwconv_openExが返却した変換情報テーブルの値を指定します。
fcheck 数値データ項目の符号チェックの有効/無効を指定します。
type 符号チェックの有効/無効を指定する数値データ型を指定します。
機能説明
wconv_setnumsignchk は、数値データ変換において項目書式のデータ型と一致しない符号のデータが入力された場合にエラーにするかどうかを指定します。
符号チェックを無効にすることで、データ型が符号つきの場合に符号なしのデータが入力された場合、符号なしのデータを正の値として変換を続行します。
また、データ型が符号なしの場合に符号つきのデータが入力された場合、符号を無視して変換を続行します。
fcheckには、以下のいずれかを指定します。
符号チェックを無効にします。
符号チェックを有効にします。
fcheckにCONV_CONTINUEを指定した場合、符号のチェックを無効にし、項目のデータ型と符号つき/なしが異なる場合でも変換を続行します。
wconv_setnumsignchkを呼び出さない場合は、fpaddingにCONV_STOPが指定されたのと同じ変換を行います。
戻り値
カスタマイズに成功した場合は、0を返却します。
カスタマイズに失敗した場合は、-1を返却します。
エラー
エラー情報は、wconv_error ()で取得します。
【エラーコード】
変換情報テーブルが異常です。または、fcheckの値が不当です。
例
wconv_setnumsignchk関数の例
/* wconv_convert関数呼び出しまではwconv_open関数の例と同様の処理 */ wconv_setnumsignchk( wd, CONV_CONTINUE, FLD_DECIMAL_SIGNED_O ); if ( ( wconv_convert( wd, &fromrecdata, &torecdata ) ) != 0x00 ) { wconv_error( wd, 1, &error ); } wconv_close( wd );