StrToInt64ExA 関数 (shlwapi.h)

10 進数または 16 進数の値を表す文字列を 64 ビット整数に変換します。

構文

BOOL StrToInt64ExA(
  [in]  PCSTR      pszString,
        STIF_FLAGS dwFlags,
  [out] LONGLONG   *pllRet
);

パラメーター

[in] pszString

種類: PCTSTR

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

dwFlags

種類: STIF_FLAGS

pszString を 64 ビット整数に変換する方法を指定する次のいずれかの値。

STIF_DEFAULT

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

STIF_SUPPORT_HEX

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

[out] pllRet

種類: LONGLONG*

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

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

返される値が LONGLONG 型の変数に含まれるには大きすぎる場合、このパラメーターには値の下位 64 ビットが含まれます。 それ以降の上位ビットはすべて失われます。

戻り値

種類: 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" を指定すると、 StrToInt64Ex は "0x00a" のみを認識し、整数値 10 に変換し、 TRUE を返します。

文字列を変換できる場合、変換を実行しない場合でも、この関数は null の場合に TRUE を返します。

注意

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

要件

要件
サポートされている最小のクライアント Windows 2000 Professional、Windows XP [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー shlwapi.h
Library Shlwapi.lib
[DLL] Shlwapi.dll (バージョン 5.0 以降)