Funkcija wctob () u C ++ pretvara široki znak u jednobajtni znak (tipa char) ako je njegov višebajtni ekvivalent jednobajtu.
Funkcija wctob () definirana je u zaglavnoj datoteci.
prototip wctob ()
int wctob (wint_t c);
Funkcija wctob () uzima širok znak c kao argument i vraća svoj uski jednobajtni ekvivalent ako je moguće.
wctob () parametri
- c: Široki karakter za sužavanje.
wctob () Povratna vrijednost
Ako c predstavlja multibajtni znak duljine 1 u početnom stanju pomaka, funkcija wctob () vraća jednobajtni prikaz c. U suprotnom se vraća EOF.
Primjer: Kako funkcionira funkcija 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; )
Kada pokrenete program, izlaz će biti:
m se može suziti Æ ne može se suziti