VarParseNumFromStr 函数 (oleauto.h)
分析字符串,并创建它所表示的数字的与类型无关的说明。
语法
HRESULT VarParseNumFromStr(
[in] LPCOLESTR strIn,
[in] LCID lcid,
[in] ULONG dwFlags,
[out] NUMPARSE *pnumprs,
[out] BYTE *rgbDig
);
参数
[in] strIn
要转换的输入字符串。
[in] lcid
区域设置标识符。
[in] dwFlags
使调用方能够控制分析,从而定义数字的可接受语法。 如果此字段设置为零,则输入字符串必须只包含十进制数字。 设置每个定义的标志位可以分析该语法功能。 例如, VarI2FromStr) 使用的标准自动化分析 (具有 (NUMPRS_STD) 设置的所有标志。
[out] pnumprs
分析的结果。
[out] rgbDig
0-7、0–9 或 0-15 范围内的数字的值,具体取决于数字是八进制、十进制还是十六进制。 所有前导零已被去除。 对于十进制数字,尾随零也会被去除,除非数字为零,在这种情况下,将存在一个零数字。
返回值
此函数可以返回其中一个值。
返回代码 | 说明 |
---|---|
|
成功。 |
|
内部内存分配失败。 (仅用于 DBCS 创建所有宽字符映射为 narrow 的副本。) |
|
字符串中没有有效的数字,或者没有与左括号匹配的右括号。 在前一种情况下,NUMPARSE 结构中的 cDig 和 cchUsed 将为零。 在后者中,NUMPARSE 结构和数字数组将完全更新,就像存在右括号一样。 |
|
对于十六进制数字和八进制数字,数组中的位数多于可以容纳的数字。 对于十进制,指数超过可能的最大值。 在这两种情况下,NUMPARSE 结构和数字数组在十进制 (完全更新,cchUsed 字段排除整个指数) 。 |
要求
要求 | 值 |
---|---|
目标平台 | Windows |
标头 | oleauto.h |
Library | OleAut32.lib |
DLL | OleAut32.dll |