Namespaces
Variants

towctrans

From cppreference.net
< c ‎ | string ‎ | wide
ヘッダー <wctype.h> で定義
wint_t towctrans ( wint_t wc, wctrans_t desc ) ;
(C95以降)

ワイド文字 wc を、 desc で識別される現在のCロケールの LC_CTYPE マッピングカテゴリを使用してマッピングします。

目次

パラメータ

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関数 (p: 400)

関連項目

(C95)
現在のCロケールで文字マッピングカテゴリを検索する
(関数)
C++ documentation for towctrans