C ++ wctob () - standardní knihovna C ++

Funkce wctob () v C ++ převádí široký znak na jednobajtový znak (typu char), pokud je jeho ekvivalent vícebajtového znaku jeden bajt.

Funkce wctob () je definována v hlavičkovém souboru.

prototyp wctob ()

 int wctob (wint_t c);

Funkce wctob () bere jako argument široký znak c a pokud je to možné, vrátí jeho ekvivalent úzkého jednobajtového znaku.

Parametry wctob ()

  • c: Široký znak se zužuje.

wctob () Vrátit hodnotu

Pokud c představuje vícebajtový znak délky 1 v počátečním stavu posunu, vrátí funkce wctob () jednobajtovou reprezentaci c. Jinak se vrátí EOF.

Příklad: Jak funguje funkce 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; )

Když spustíte program, výstup bude:

 m lze zúžit Æ nelze zúžit

Zajímavé články...