Funktionen wctob () i C ++ konverterer et bredt tegn til et enkelt byte-tegn (af typen char), hvis dets multibyt-tegnækvivalent er en enkelt byte.
Funktionen wctob () er defineret i headerfilen.
wctob () prototype
int wctob (wint_t c);
Funktionen wctob () tager et bredt tegn c som argument og returnerer dets smalle enkeltbyte-tegnækvivalent, hvis det er muligt.
wctob () Parametre
- c: Den brede karakter, der skal indsnævres.
wctob () Returværdi
Hvis c repræsenterer et multibyte-tegn af længde 1 i indledende skifttilstand, returnerer funktionen wctob () den enkeltbyte-repræsentation af c. Ellers returneres EOF.
Eksempel: Hvordan fungerer 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; )
Når du kører programmet, vil output være:
m kan indsnævres Æ kan ikke indsnævres