Пространства имён
Варианты
Действия

std::iswctype

Материал из cppreference.com
 
 
 
Широкие строки с завершающим нулём
Функции
Операции с символами
Преобразования в числовые форматы
(C++11)(C++11)
(C++11)(C++11)
Операции со строками
Операции с массивами
 
<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
(функция) [править]