std::towctrans
提供: cppreference.com
ヘッダ <cwctype> で定義
|
||
std::wint_t towctrans( std::wint_t wc, std::wctrans_t desc ); |
||
desc
の表す現在の C のロケールの LC_CTYPE マッピングカテゴリを使用してワイド文字 wc
をマップします。
ch
の値が wchar_t として表現可能でなくマクロ WEOF の値と等しくもなければ、動作は未定義です。
目次 |
[編集] 引数
ch | - | マップするワイド文字 |
desc | - | std::wctrans の呼び出しから取得した LC_CTYPE マッピング |
[編集] 戻り値
現在の C のロケールの LC_CTYPE ファセットの desc
で表されるマッピングを使用した ch
のマップされた値。
[編集] 例
以下の例は片仮名から平仮名への文字マッピングをデモンストレーションします。
Run this code
#include <clocale> #include <cwctype> #include <iostream> #include <algorithm> std::wstring tohira(std::wstring str) { std::transform(str.begin(), str.end(), str.begin(), [](wchar_t c) { return std::towctrans(c, std::wctrans("tojhira")); }); return str; } int main() { std::setlocale(LC_ALL, "ja_JP.UTF-8"); std::wstring kana = L"ヒラガナ"; std::wcout << "katakana characters " << kana << " are " << tohira(kana) << " in hiragana\n"; }
出力:
katakana characters ヒラガナ are ひらがな in hiragana
[編集] 関連項目
現在のCのロケールで文字マッピングカテゴリを検索します (関数) | |
towctrans の C言語リファレンス
|