std::iswblank - cppreference.com

From cppreference.com

intiswblank(std::wint_tch);(since C++11)Checks if the given wide character is classified as blank character (that is, a whitespace character used to separate words in a sentence) by the current C locale. In the default C locale, only space (0x20) and horizontal tab (0x09) are blank characters.

If the value of ch is neither representable as a wchar_t nor equal to the value of the macro WEOF, the behavior is undefined.

Parameters

ch - wide character Return value

Non-zero value if the wide character is a blank character, zero otherwise.

Notes

ISO 30112

defines POSIX blank characters as Unicode characters U+0009, U+0020, U+1680, U+180E, U+2000..U+2006, U+2008, U+200A, U+205F, and U+3000.

Example

Run this code

#include<clocale>#include<cwctype>#include<iostream>intmain(){wchar_tc=L'\u3000';// Ideographic space (' ')std::cout<<std::hex<<std::showbase<<std::boolalpha;std::cout<<"in the default locale, iswblank("<<(std::wint_t)c<<") = "<<(bool)std::iswblank(c)<<'\n';std::setlocale(LC_ALL,"en_US.utf8");std::cout<<"in Unicode locale, iswblank("<<(std::wint_t)c<<") = "<<(bool)std::iswblank(c)<<'\n';}Output:

in the default locale, iswblank(0x3000) = false in Unicode locale, iswblank(0x3000) = true See also

ASCII values characters

iscntrl

iswcntrl

isprint

iswprint

isspace

iswspace

isblank

iswblank

isgraph

iswgraph

ispunct

iswpunct

isalnum

iswalnum

isalpha

iswalpha

isupper

iswupper

islower

iswlower

isdigit

iswdigit

isxdigit

iswxdigit

decimal hexadecimal octal 0–8 \x0–\x8\0–\10control codes (NUL, etc.) ≠0000000000009 \x9\11tab (\t) ≠00≠0≠00000000010–13 \xA–\xD\12–\15whitespaces (\n, \v, \f, \r) ≠00≠000000000014–31 \xE–\x1F\16–\37control codes ≠00000000000032 \x20\40space 0≠0≠0≠00000000033–47 \x21–\x2F\41–\57!"#$%&'()*+,-./0≠000≠0≠000000048–57 \x30–\x39\60–\7101234567890≠000≠00≠0000≠0≠058–64 \x3A–\x40\72–\100:;<=>?@0≠000≠0≠000000065–70 \x41–\x46\101–\106ABCDEF0≠000≠00≠0≠0≠000≠071–90 \x47–\x5A\107–\132GHIJKLMNOP
QRSTUVWXYZ0≠000≠00≠0≠0≠000091–96 \x5B–\x60\133–\140[\]^_`0≠000≠0≠000000097–102 \x61–\x66\141–\146abcdef0≠000≠00≠0≠00≠00≠0103–122 \x67–\x7A\147–\172ghijklmnop
qrstuvwxyz0≠000≠00≠0≠00≠000123–126 \x7B–\x7E\172–\176{|}~0≠000≠0≠0000000127 \x7F\177backspace character (DEL) ≠000000000000