Namensräume
Varianten
Aktionen

std::towctrans

Von cppreference.com
< cpp‎ | string‎ | wide
 
 
 
 
Definiert in Header <cwctype>
std::wint_t towctrans( std::wint_t ch, std::wctrans_t desc );

Ordnet das Weitzeichen ch unter Verwendung der im aktuellen C-Locale definierten LC_CTYPE-Zuordnungskategorie zu, die durch desc identifiziert wird.

Wenn der Wert von ch weder als wchar_t darstellbar ist noch gleich dem Wert des Makros WEOF ist, ist das Verhalten undefiniert.

Inhalt

[bearbeiten] Parameter

ch - Das zuzuordnende Weitzeichen
desc - Die LC_CTYPE-Zuordnung, die durch einen Aufruf von std::wctrans erhalten wurde

[bearbeiten] Rückgabewert

Der zugeordnete Wert von ch unter Verwendung der Zuordnung, die durch desc in der LC_CTYPE-Facet des aktuellen C-Locales identifiziert wird.

[bearbeiten] Beispiel

Das folgende Beispiel demonstriert die Zuordnung von Katakana- zu Hiragana-Zeichen.

#include <algorithm>
#include <clocale>
#include <cwctype>
#include <iostream>
 
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";
}

Ausgabe

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

[bearbeiten] Siehe auch

sucht eine Zeichenzuordnungskategorie in der aktuellen C-Locale auf
(Funktion) [bearbeiten]
C-Dokumentation für towctrans