次の方法で共有


StrToIntExW 関数 (shlwapi.h)

10 進数または 16 進数を表す文字列を整数に変換します。

構文

BOOL StrToIntExW(
  [in]  PCWSTR     pszString,
        STIF_FLAGS dwFlags,
  [out] int        *piRet
);

パラメーター

[in] pszString

型: PCTSTR

変換する null で終わる文字列へのポインター。 文字列の有効な形式の詳細については、「解説」セクションを参照してください。

dwFlags

型: STIF_FLAGS

pszString を整数に変換 解析する方法を指定する次のいずれかの値。

STIF_DEFAULT

pszString の文字列には、10 進値の表現が含まれています。

STIF_SUPPORT_HEX

pszString の文字列には、10 進数または 16 進数の値の表現が含まれています。 16 進数表現では、文字 A から F は大文字と小文字が区別されません。

[out] piRet

型: int*

変換された文字列を受け取る int へのポインター。 たとえば、文字列 "123" の場合、この値が指す整数は整数値 123 を受け取ります。

この関数が FALSE返す場合、この値は未定義です。

返される値が大きすぎるため、int型の変数 含めなければ、このパラメーターには値の下位 32 ビットが含まれます。 それ以降の上位ビットはすべて失われます。

戻り値

型: BOOL

文字列が変換 場合は TRUE を返します。それ以外の場合は、FALSEを します。

備考

pszString パラメーターが指す文字列は、正常に解析するには、次のいずれかの形式である必要があります。

  • このフォームは、いずれかのフラグの下に 10 進値として受け入れられます。 ''' 構文 (省略可能な空白)(省略可能な記号)(1 桁以上の 10 進数) '''
  • これらの形式は、STIF_SUPPORT_HEX フラグが渡されるときに 16 進数の値に必要です。 ''' 構文 (省略可能な空白)(省略可能な記号)0x(1 桁以上の 16 進数) '''
    (optional white space)(optional sign)0X(one or more hexadecimal digits)
    
省略可能な記号には、文字 '-' または '+' を指定できます。省略すると、符号は正と見なされます。
メモ 値が 16 進数として解析される場合、省略可能な記号は無視されます ('-' 文字であっても)。 たとえば、文字列 "-0x1" は -1 ではなく 1 として解析されます。
 
pszString 指す文字列に無効な文字が含まれている場合、その文字は変換される文字列の末尾と見なされ、残りは無視されます。 たとえば、無効な 16 進数文字列 "0x00am123" を指定すると、StrToIntEx は "0x00a" のみを認識し、それを整数値 10 に変換し、TRUE返します。

手記

shlwapi.h ヘッダーは、Unicode プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして StrToIntEx を定義します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルエラーやランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。

必要条件

要件 価値
サポートされる最小クライアント Windows 2000 Professional、Windows XP [デスクトップ アプリのみ]
サポートされる最小サーバー Windows 2000 Server [デスクトップ アプリのみ]
ターゲット プラットフォーム の ウィンドウズ
ヘッダー shlwapi.h
ライブラリ Shlwapi.lib
DLL Shlwapi.dll (バージョン 4.71 以降)