名稱空間
變體
操作

std::iswspace

來自 cppreference.com
< cpp‎ | string‎ | wide
定義於標頭檔案 <cwctype>
int iswspace( wint_t ch );

檢查給定寬字元是否為寬空白字元,根據當前安裝的 C 語言環境分類。在預設語言環境中,空白字元如下:

  • 空格(0x20' '
  • 換頁符(0x0c'\f'
  • 換行符(0x0a'\n'
  • 回車符(0x0d'\r'
  • 水平製表符(0x09'\t'
  • 垂直製表符(0x0b'\v')。

如果 ch 的值既不能表示為 wchar_t,也不等於宏 WEOF 的值,則行為未定義。

目錄

[編輯] 引數

ch - 寬字元

[編輯] 返回值

如果寬字元是空白字元,則返回非零值;否則返回零。

[編輯] 注意

ISO 30112 將 POSIX 空白字元定義為 Unicode 字元 U+0009..U+000D, U+0020, U+1680, U+180E, U+2000..U+2006, U+2008..U+200A, U+2028, U+2029, U+205F 和 U+3000。

[編輯] 示例

演示 iswspace 在不同語言環境下的使用。

#include <clocale>
#include <cwctype>
#include <iostream>
 
void try_with(wchar_t c, const char* loc)
{
    std::setlocale(LC_ALL, loc);
    std::wcout << "isspace('" << c << "') in " << loc << " locale returned "
               << std::boolalpha << static_cast<bool>(std::iswspace(c)) << '\n';
}
 
int main()
{
    const wchar_t EM_SPACE = L'\u2003'; // Unicode character 'EM SPACE'
    try_with(EM_SPACE, "C");
    try_with(EM_SPACE, "en_US.UTF8");
}

輸出

isspace(' ') in C locale returned false
isspace(' ') in en_US.UTF8 locale returned true

[編輯] 參閱

檢查字元是否被區域設定分類為空格
(函式模板) [編輯]
檢查字元是否為空格字元
(函式) [編輯]
C 文件 用於 iswspace
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 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 \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