__crtLCMapStringW
将一个字符串映射到另一个字符串,以执行指定的与区域设置相关的转换。 此函数还可用于生成输入字符串的排序键。
语法
int __crtLCMapStringW(
LCID Locale,
DWORD dwMapFlags,
LPCWSTR lpSrcStr,
int cchSrc,
LPWSTR lpDestStr,
int cchDest)
参数
Locale
区域设置标识符。 区域设置为字符串映射或排序键生成提供上下文。 应用程序可使用 MAKELCID
宏创建区域设置标识符。
dwMapFlags
在字符串或排序键生成期间要使用的转换的类型。
lpSrcStr
指向函数映射或用于排序键生成的源字符串的指针。 假定此参数为 Unicode 字符串。
cchSrc
由 lpSrcStr
参数指向的字符串的大小(以字符为单位)。 此计数可包含 null 终止符,也可不包含它。
cchSrc
值 -1 指定由 lpSrcStr
指向的字符串是以 null 结尾的。 如果是这样,并且此函数在其字符串映射模式下使用,则此函数会自己计算字符串的长度,并以 null 终止存储在 *lpDestStr
中的映射字符串。
lpDestStr
指向函数将映射字符串或排序键存储到其中的缓冲区的长指针。
cchDest
由 lpDestStr
指向的缓冲区的大小(以字符为单位)。
返回值
如果 cchDest
的值不为零,则写入到缓冲区的字符数(如果指定了 LCMAP_SORTKEY
,则为字节数)表示成功。 此计数包括 null 终止符的空间。
如果 cchDest
值为零,则接收转换的字符串或排序键所需的缓冲区大小(以字符为单位,如果指定了 LCMAP_SORTKEY
,则以字节为单位)表示成功。 此大小包括 null 终止符的空间。
零表示失败。 若要获得扩展的错误信息,请调用 GetLastError
函数。
备注
如果 cchSrc
大于零且 lpSrcStr
是一个以 null 结尾的字符串,则 __crtLCMapStringW
将 cchSrc
设置为字符串的长度。 然后, __crtLCMapStringW
使用指定的参数调用 LCMapString
函数的宽字符串 (Unicode) 版本。 若要详细了解此函数的参数和返回值,请参阅 LCMapString
。
要求
例程 | 必需的标头 |
---|---|
__crtLCMapStringW |
<awint.h> |