std::iswctype
Материал из cppreference.com
<tbody>
</tbody>
| Определено в заголовочном файле <cwctype>
|
||
int iswctype( std::wint_t wc, std::wctype_t desc ); |
||
Классифицирует широкий символ wc, используя категорию LC_CTYPE текущей локали C, идентифицируемую desc.
Если значение wc не может быть представлено как wchar_t и не равно значению макроса WEOF, поведение неопределено.
Параметры
| wc | — | широкий символ для классификации |
| desc | — | категория LC_CTYPE, полученная в результате вызова std::wctype |
Возвращаемое значение
Ненулевое значение, если символ wc имеет свойство, определённое desc в фасете LC_CTYPE текущей локали C, иначе ноль.
Пример
Запустить этот код
#include <clocale>
#include <cwctype>
#include <iostream>
bool classify(wchar_t wc, const std::string& cat)
{
return std::iswctype(wc, std::wctype(cat.c_str()));
}
int main()
{
std::setlocale(LC_ALL, "ja_JP.UTF-8");
std::cout << "Символ \u6c34 это...\n";
for (std::string s : {"digit", "alpha", "space", "cntrl", "jkanji"})
std::cout << s << "? " << std::boolalpha << classify(L'\u6c34', s) << '\n';
}
Вывод:
The character 水 is...
digit? false
alpha? true
space? false
cntrl? false
jkanji? true
Смотрите также
| ищет категорию классификации символов в текущей локали C (функция) | |
Документация C по iswctype
| |