NUMPARSE の構造

[このドキュメントはプレビュー版であり、後のリリースで変更されることがあります。 空白のトピックは、プレースホルダーとして挿入されています。]

dwInFlags の と dwOutFlags の の両方で使用されるフラグ:

 NUMPRS_LEADING_WHITE
 NUMPRS_TRAILING_WHITE
 NUMPRS_LEADING_PLUS   
 NUMPRS_TRAILING_PLUS
 NUMPRS_LEADING_MINUS
 NUMPRS_TRAILING_MINUS
 NUMPRS_HEX_OCT
 NUMPRS_PARENS
 NUMPRS_DECIMAL
 NUMPRS_THOUSANDS
 NUMPRS_CURRENCY   
 NUMPRS_EXPONENT
 NUMPRS_USE_ALL
 NUMPRS_STD

dwOutFlags のみで使用されるフラグ:

 NUMPRS_NEG
 NUMPRS_INEXACT

VarParseNumFromStr ms221573(v=vs.100).md 発呼者が渡された NUMPARSE 構造の 2 つの要素を初期化する必要があります。

typedef struct {
   int   cDig;
   unsigned long   dwInFlags;
   unsigned long   dwOutFlags;
   int   cchUsed;
   int   nBaseShift;
   int   nPwr10;
} NUMPARSE;

cDig 要素は rgbDig 配列のサイズに設定され、dwInFlags の は解析オプションに設定されます。 他の要素をすべて初期化されていない可能性がありますされはで設定、関数を除くエラー、次の段落に示す。 cDig 要素が、実際 rgbDig 配列に書き込まれる数字の数を反映する関数によっても変更されます。

NUMPARSE 構造体の cchUsed 要素が正常に解析された文字列の先頭) からの文字数で挿入されます。 これにより、呼び出し元文字列全体が (必要に応じて VarI2FromStr などの関数によって、数または文字列の解析を続行する場所の一部であったかどうかを判断できます。

nBaseShift 要素は 1 桁 (3 または 4 を 8 進数と 16 進数の数字、および 10 進数の 0) あたりのビット数を示します。

特徴は次だけを 10 進数のとおりです。

  • nPwr10 の は小数点位置を最下位の桁の 10 の累乗を設定します。

  • 数が負の値は、NUMPRS_NEG dwOutFlags の で設定されます。

  • 桁配列に収まるよりの複数の 0 以外の 10 進数の数字が場合、は、NUMPRS_INEXACT フラグが設定されます。