OemToCharBuffA 函数 (winuser.h)

将 OEM 定义的字符集中的指定字符数转换为 ANSI 或宽字符字符串。

语法

BOOL OemToCharBuffA(
  [in]  LPCSTR lpszSrc,
  [out] LPSTR  lpszDst,
  [in]  DWORD  cchDstLength
);

参数

[in] lpszSrc

类型:LPCSTR

OEM 定义的字符集中的一个或多个字符。

[out] lpszDst

类型:LPTSTR

接收已转换字符串的目标缓冲区。 如果将 OemToCharBuff 函数用作 ANSI 函数,可以通过将 lpszDst 参数设置为与 lpszSrc 参数相同的地址来转换字符串。 如果将 OemToCharBuff 函数用作宽字符函数,则无法执行此操作。

[in] cchDstLength

类型:DWORD

lpszSrc 参数标识的缓冲区中要转换的字符数。

返回值

类型:BOOL

返回值始终为非零值,除非在函数宽字符版本中将同一地址传递给 lpszSrclpszDst。 在本例中,函数返回零,GetLastError 返回 ERROR_INVALID_ADDRESS

言论

OemToChar 函数不同,OemToCharBuff 函数在 lpszSrc指向的缓冲区中遇到 null 字符时,它不会停止转换字符。 OemToCharBuff 函数转换所有 cchDstLength 字符。

注意

winuser.h 标头将 OemToCharBuff 定义为一个别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将中性编码别名与不中性编码的代码混合使用可能会导致编译或运行时错误不匹配。 有关详细信息,请参阅函数原型的 约定。

要求

要求 价值
最低支持的客户端 Windows 2000 Professional [仅限桌面应用]
支持的最低服务器 Windows 2000 Server [仅限桌面应用]
目标平台 窗户
标头 winuser.h (包括 Windows.h)
User32.lib
DLL User32.dll
API 集 ext-ms-win-ntuser-chartranslation-l1-1-0(在 Windows 8 中引入)

另请参阅

CharToOem

CharToOemBuff

概念

OemToChar

参考

字符串