wctob
确定宽字符是否对应于多字节字符并返回其多字节字符表示。
int wctob(
wint_t wchar
);
参数
- wchar
要转换的值。
返回值
如果 wctob 成功转换宽字符,则返回它的多字节字符表示,这仅在多字节字符长恰好为一个字节。 如果wctob 遇到宽字符字符,它无法转换为多字节字符或多字节字符不止一个字节,则返回 a-1。
备注
如果多字节字符长恰好为一个字节,wctob 函数通过返回 int 值,将wchar 包含的宽字符转换为传递的对应的多字节字符。
如果 wctob 不成功,并且对应的多字节字符未找到,函数将 errno 设置为 EILSEQ 并返回 -1。
要求
例程 |
必需的标头 |
---|---|
wctob |
<wchar.h> |
有关其他兼容性信息,请参见“简介”中的兼容性。
示例
此程序阐述 wcstombs 函数的行为。
// crt_wctob.c
#include <stdio.h>
#include <wchar.h>
int main( void )
{
int bChar = 0;
wint_t wChar = 0;
// Set the corresponding wide character to exactly one byte.
wChar = (wint_t)'A';
bChar = wctob( wChar );
if (bChar == WEOF)
{
printf( "No corresponding multibyte character was found.\n");
}
else
{
printf( "Determined the corresponding multibyte character to"
" be \"%c\".\n", bChar);
}
}
.NET Framework 等效项
不适用。若要调用标准 C 函数,请使用 PInvoke。有关更多信息,请参见平台调用示例。