函式
<cwchar>

wctob

int wctob (wint_t wc);
將寬字元轉換為單位元組
當且僅當寬字元 wc 對應於多位元組序列初始狀態下的單位元組長度多位元組字元時,返回該寬字元 wc 的單位元組表示。

否則,返回 EOF

引數

wc
寬字元的 wint_t 提升。
該值在內部被轉換為一個wchar_t以供解釋。

返回值

如果 wc 在多位元組序列的初始移位狀態下可以轉換為一個單位元組字元,函式返回其表示形式,作為一個unsigned char(提升為一個型別為int).
否則,返回 EOF

示例

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

int main()
{
  int i,num;
  const wchar_t wcs [] = L"wctob example";

  num=0;
  for (i=0; i<wcslen(wcs); ++i)
    if (wctob(wcs[i]) != EOF) ++num;

  wprintf (L"wcs contains %d characters that translate to single-byte characters.",num);

  return 0;
}

輸出
wcs contains 14 characters that translate to single-byte characters.


另見