strToInt64ExA 函数 (shlwapi.h)
将表示十进制或十六进制值的字符串转换为 64 位整数。
语法
BOOL StrToInt64ExA(
[in] PCSTR pszString,
STIF_FLAGS dwFlags,
[out] LONGLONG *pllRet
);
参数
[in] pszString
类型: PCTSTR
指向要转换的 以 null 结尾的字符串的指针。 有关字符串的有效形式的详细信息,请参阅“备注”部分。
dwFlags
类型: STIF_FLAGS
以下值之一,指定应如何分析 pszString 以将其转换为 64 位整数。
STIF_DEFAULT
pszString 处的字符串包含十进制值的表示形式。
STIF_SUPPORT_HEX
pszString 处的字符串包含十进制或十六进制值的表示形式。 请注意,在十六进制表示形式中,字符 A-F 不区分大小写。
[out] pllRet
类型: LONGLONG*
指向 LONGLONG 类型的变量的指针,该变量接收转换后的字符串的 64 位整数值。 例如,对于字符串“123”,此值指向的整数接收值 123。
如果此函数返回 FALSE,则此值未定义。
如果返回的值太大,无法包含在 LONGLONG 类型的变量中,则此参数包含该值的 64 个低序位。 超出此范围的任何高阶位都将丢失。
返回值
类型: BOOL
如果转换字符串,则返回 TRUE ;否则 为 FALSE。
注解
pszString 参数指向的字符串必须具有以下形式之一才能成功分析。
- 此窗体被接受为任一标志下的十进制值。 “”语法 (可选空格) (可选符号) (一个或多个十进制数字) “”
- 传递STIF_SUPPORT_HEX标志时,十六进制值需要这些形式。
“”语法 (可选空格) (可选符号) 0x) “” (一个或多个十六进制数字
(optional white space)(optional sign)0X(one or more hexadecimal digits)
如果 pllRet 为 NULL,则该函数返回 TRUE (如果字符串可以转换),即使它不执行转换也是如此。
注意
shlwapi.h 标头将 StrToInt64Ex 定义为别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将非特定编码别名与非非特定编码的代码混合使用可能会导致不匹配,从而导致编译或运行时错误。 有关详细信息,请参阅 函数原型的约定。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 2000 专业版、Windows XP [仅限桌面应用] |
最低受支持的服务器 | Windows 2000 Server [仅限桌面应用] |
目标平台 | Windows |
标头 | shlwapi.h |
Library | Shlwapi.lib |
DLL | Shlwapi.dll (5.0 或更高版本) |