函数
<cwchar>

btowc

wint_t btowc (int c);
将单字节字符转换为宽字符
如果 c 是多字节字符序列的初始状态下,长度为一字节的有效多字节字符,则返回其宽字符表示。否则,返回 WEOF

否则,它返回 WEOF

参数

c
要放回的字符的int作为多字节序列进行解释的字节的类型提升。
该值在放回时被内部转换为unsigned char待解释。

返回值

如果 c 是多字节字符序列初始移位状态下的有效单字节字符,则函数将其表示为wchar_t(转换为 wint_t 类型的值)。

如果 cEOF,或者 c 不是有效的单字节表示,则函数返回 WEOF

示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
/* btowc example */
#include <wchar.h>

int main()
{
  int i,num;
  const char mbs [] = "btowc example";

  num=0;
  for (i=0; i<sizeof(mbs); ++i)
    if (btowc(mbs[i]) != WEOF) ++num;

  wprintf (L"mbs contains %d single-byte characters.\n",num);

  return 0;
}

输出
mbs contains 14 single-byte characters.


另见