iswblank
From cppreference.com
C
Concurrency support (C11)
Null-terminated wide strings
Character manipulation
Conversions to numeric formats
String manipulation
Array manipulation
Types
Macros
(C95)
(C95)
(C95)
(C95)
(C95)
(C95)
iswblank
(C99)
(C95)(C99)
(C99)(C95)(C99)
(C95)(C11)
(C95)(C11)
(C95)
(C95)(C95)
(C95)(C95)
(C95)
Defined in header
<wctype.h>
int iswblank( wint_t ch );
(since C99)
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.
[edit] Parameters
ch
-
wide character
[edit] Return value
Non-zero value if the wide character is a blank character, zero otherwise.
[edit] 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.
[edit] Example
Run this code
#include <locale.h> #include <stdio.h> #include <wchar.h> #include <wctype.h> int main(void) { wchar_t c = L'\u3000'; // Ideographic space (' ') printf ("In the default locale, iswblank(%#x) = %d\n", c, !!iswblank(c)); setlocale (LC_ALL, "en_US.utf8"); printf ("In Unicode locale, iswblank(%#x) = %d\n", c, !!iswblank(c)); }
Output:
In the default locale, iswblank(0x3000) = 0 In Unicode locale, iswblank(0x3000) = 1
[edit] References
- C23 standard (ISO/IEC 9899:2024):
- 7.30.2.1.3 The iswblank function (p: TBD)
- C17 standard (ISO/IEC 9899:2018):
- 7.30.2.1.3 The iswblank function (p: TBD)
- C11 standard (ISO/IEC 9899:2011):
- 7.30.2.1.3 The iswblank function (p: 449)
- C99 standard (ISO/IEC 9899:1999):
- 7.25.2.1.3 The iswblank function (p: 395)
[edit] See also
C++ documentation for iswblank
ASCII values | characters |
isblank |
|||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
decimal | hexadecimal | octal | |||||||||||||
0–8 | \x0 –\x8
|
0円 –10円
|
control codes (NUL , etc.)
|
≠0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
9 | \x9
|
11円
|
tab (\t )
|
≠0
|
0
|
≠0
|
≠0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
10–13 | \xA –\xD
|
12円 –15円
|
whitespaces (\n , \v , \f , \r )
|
≠0
|
0
|
≠0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
14–31 | \xE –\x1F
|
16円 –37円
|
control codes | ≠0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
32 | \x20
|
40円
|
space | 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
|
173円 –176円
|
{|}~
|
0
|
≠0
|
0
|
0
|
≠0
|
≠0
|
0
|
0
|
0
|
0
|
0
|
0
|
127 | \x7F
|
177円
|
backspace character (DEL )
|
≠0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|