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