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

std::iswblank

Материал из cppreference.com
 
 
 
Широкие строки с завершающим нулём
Функции
Операции с символами
Преобразования в числовые форматы
(C++11)(C++11)
(C++11)(C++11)
Операции со строками
Операции с массивами
 
<tbody> </tbody>
Определено в заголовочном файле <cwctype>
int iswblank( std::wint_t ch );
(начиная с C++11)

Проверяет, классифицируется ли данный широкий символ как пустой символ (то есть пробельный символ, используемый для разделения слов в предложении) текущей локалью C. В локали C по умолчанию только пробел (0x20) и горизонтальная табуляция (0x09) являются пустыми символами.

Если значение ch не может быть представлено как wchar_t и не равно значению макроса WEOF, поведение неопределено.

Параметры

ch — широкий символ

Возвращаемое значение

Ненулевое значение, если широкий символ является пустым, иначе ноль.

Примечание

ISO 30112 определяет пустые символы POSIX как символы Юникода U+0009, U+0020, U+1680, U+180E, U+2000..U+2006, U+2008, U+200A, U+205F и U+3000.

Пример

#include <clocale>
#include <cwctype>
#include <iostream>

int main()
{
    wchar_t c = L'\u3000'; // Идеографический пробел (' ')

    std::cout << std::hex << std::showbase << std::boolalpha;
    std::cout << "в локали по умолчанию, iswblank(" << (std::wint_t)c << ") = "
              << (bool)std::iswblank(c) << '\n';
    std::setlocale(LC_ALL, "en_US.utf8");
    std::cout << "в локали Юникода, iswblank(" << (std::wint_t)c << ") = "
              << (bool)std::iswblank(c) << '\n';
}

Вывод:

в локали по умолчанию, iswblank(0x3000) = false
в локали Юникода, iswblank(0x3000) = true

Смотрите также

проверяет, классифицируется ли символ локалью как пустой символ
(шаблон функции) [править]
(C++11)
проверяет, является ли символ пустым символом
(функция) [править]
ASCII значения символы

iscntrl
iswcntrl

isprint
iswprint

isspace
iswspace

isblank
iswblank

isgraph
iswgraph

ispunct
iswpunct

isalnum
iswalnum

isalpha
iswalpha

isupper
iswupper

islower
iswlower

isdigit
iswdigit

isxdigit
iswxdigit

деся-тичные шестнад-цатерич-ные восьме-ричные
0–8 \x0–\x8 \0–\10 управляющие коды (NUL, и т.д.) ≠0 0 0 0 0 0 0 0 0 0 0 0
9 \x9 \11 табуляция (\t) ≠0 0 ≠0 ≠0 0 0 0 0 0 0 0 0
10–13 \xA–\xD \12–\15 пробельные (\n, \v, \f, \r) ≠0 0 ≠0 0 0 0 0 0 0 0 0 0
14–31 \xE–\x1F \16–\37 управляющие коды ≠0 0 0 0 0 0 0 0 0 0 0 0
32 \x20 \40 пробел 0 ≠0 ≠0 ≠0 0 0 0 0 0 0 0 0
33–47 \x21–\x2F \41–\57 !"#$%&'()*+,-./ 0 ≠0 0 0 ≠0 ≠0 0 0 0 0 0 0
48–57 \x30–\x39 \60–\71 0123456789 0 ≠0 0 0 ≠0 0 ≠0 0 0 0 ≠0 ≠0
58–64 \x3A–\x40 \72–\100 :;<=>?@ 0 ≠0 0 0 ≠0 ≠0 0 0 0 0 0 0
65–70 \x41–\x46 \101–\106 ABCDEF 0 ≠0 0 0 ≠0 0 ≠0 ≠0 ≠0 0 0 ≠0
71–90 \x47–\x5A \107–\132 GHIJKLMNOP
QRSTUVWXYZ
0 ≠0 0 0 ≠0 0 ≠0 ≠0 ≠0 0 0 0
91–96 \x5B–\x60 \133–\140 [\]^_` 0 ≠0 0 0 ≠0 ≠0 0 0 0 0 0 0
97–102 \x61–\x66 \141–\146 abcdef 0 ≠0 0 0 ≠0 0 ≠0 ≠0 0 ≠0 0 ≠0
103–122 \x67–\x7A \147–\172 ghijklmnop
qrstuvwxyz
0 ≠0 0 0 ≠0 0 ≠0 ≠0 0 ≠0 0 0
123–126 \x7B–\x7E \172–\176 {|}~ 0 ≠0 0 0 ≠0 ≠0 0 0 0 0 0 0
127 \x7F \177 символ возврата (DEL) ≠0 0 0 0 0 0 0 0 0 0 0 0