Функцията wctob () в C ++ преобразува широк символ в единичен байтов символ (от тип char), ако неговият еквивалент на многобайтови символи е единичен байт.
Функцията wctob () е дефинирана в заглавния файл.
прототип на wctob ()
int wctob (wint_t c);
Функцията wctob () приема широк символ c като свой аргумент и връща еквивалента си тесен единичен байт, ако е възможно.
wctob () Параметри
- c: Широкият характер за стесняване.
wctob () Върната стойност
Ако c представлява многобайтов символ с дължина 1 в първоначално състояние на изместване, функцията wctob () връща еднобайтовото представяне на c. В противен случай EOF се връща.
Пример: Как работи функцията 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; )
Когато стартирате програмата, изходът ще бъде:
m може да бъде стеснен Æ не може да бъде стеснен