Die Funktion wctob () in C ++ konvertiert ein breites Zeichen in ein Einzelbytezeichen (vom Typ char), wenn sein Multibytezeichenäquivalent ein Einzelbyte ist.
Die Funktion wctob () ist in der Header-Datei definiert.
wctob () Prototyp
int wctob (wint_t c);
Die Funktion wctob () verwendet ein breites Zeichen c als Argument und gibt nach Möglichkeit das schmale Einzelbyte-Zeichenäquivalent zurück.
wctob () Parameter
- c: Das breite Zeichen zu eng.
wctob () Rückgabewert
Wenn c im Anfangsverschiebungszustand ein Multibyte-Zeichen der Länge 1 darstellt, gibt die Funktion wctob () die Einzelbyte-Darstellung von c zurück. Andernfalls wird EOF zurückgegeben.
Beispiel: Wie funktioniert die Funktion wctob ()?
#include #include #include #include using namespace std; void test_wctob(wchar_t c) ( int ch = wctob(c); if (ch != EOF) wcout << c << L" can be narrowed" << endl; else wcout << c << L" can't be narrowed" << endl; ) int main() ( setlocale(LC_ALL, "en_US.utf8"); wchar_t wc1 = L'm'; wchar_t wc2 = L'u00c6'; test_wctob(wc1); test_wctob(wc2); return 0; )
Wenn Sie das Programm ausführen, lautet die Ausgabe wie folgt:
m kann verengt werden Æ kann nicht verengt werden