Namespaces
Variants

towctrans

From cppreference.net
< c ‎ | string ‎ | wide
定义于头文件 <wctype.h>
wint_t towctrans ( wint_t wc, wctrans_t desc ) ;
(C95 起)

使用由 desc 标识的当前 C 本地环境的 LC_CTYPE 映射类别,对宽字符 wc 进行映射。

目录

参数

wc - 待映射的宽字符
desc - 通过调用 LC_CTYPE 映射描述符,从 wctrans 获取

返回值

使用当前C本地环境的 LC_CTYPE 分类中由 desc 标识的映射规则,对 wc 进行映射后的值。

示例

#include <locale.h>
#include <wctype.h>
#include <wchar.h>
#include <stdio.h>
int main(void)
{
    setlocale(LC_ALL, "ja_JP.UTF-8");
    const wchar_t kana[] = L"ヒラガナ";
    size_t sz = sizeof kana / sizeof *kana;
    wchar_t hira[sz];
    for (size_t n = 0; n < sz; ++n)
        hira[n] = towctrans(kana[n], wctrans("tojhira"));
    printf("katakana characters %ls are %ls in hiragana\n", kana, hira);
}

输出:

katakana characters ヒラガナ are ひらがな in hiragana

参考文献

  • C23 标准 (ISO/IEC 9899:2024):
  • 7.30.3.2.1 towctrans 函数 (p: TBD)
  • C17 标准 (ISO/IEC 9899:2018):
  • 7.30.3.2.1 towctrans 函数 (p: TBD)
  • C11 标准 (ISO/IEC 9899:2011):
  • 7.30.3.2.1 towctrans 函数 (p: 454)
  • C99标准(ISO/IEC 9899:1999):
  • 7.25.3.2,1 towctrans函数(页码:400)

参见

(C95)
在当前C语言区域中查找字符映射类别
(函数)
C++ 文档 关于 towctrans