名前空間
変種
操作

std::iswprint

提供: cppreference.com
< cpp‎ | string‎ | wide
ヘッダ <cwctype> で定義
int iswprint( std::wint_t ch );

指定されたワイド文字が表示可能、すなわち数字 (0123456789)、大文字 (ABCDEFGHIJKLMNOPQRSTUVWXYZ)、小文字 (abcdefghijklmnopqrstuvwxyz)、句読点 (!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~)、空白または現在の C のロケール固有のいずれかの表示可能な文字かどうかを調べます。

ch の値が wchar_t として表現可能でなくマクロ WEOF の値と等しくもなければ、動作は未定義です。

目次

[編集] 引数

ch - ワイド文字

[編集] 戻り値

ワイド文字が表示可能であれば非ゼロの値、そうでなければゼロ。

[編集] ノート

ISO 30112 はどの Unicode 文字が POSIX の print カテゴリに含まれるかを規定しています。

[編集]

#include <iostream>
#include <cwctype>
#include <clocale>
 
int main()
{
    wchar_t c = L'\u2002'; // en-space
    std::setlocale(LC_ALL, "en_US.utf8");
    std::cout << std::boolalpha << std::hex << std::showbase
              << "in Unicode locale,\n"
              << "iswprint('" << c << "') = "
              << (bool)std::iswprint(c) << '\n';
 
    c = L'\u0082'; // break permitted
    std::cout << "iswprint('" << c << "') = "
              << (bool)std::iswprint(c) << '\n';
}

出力:

in Unicode locale,
iswprint('0x2002') = true
iswprint('0x82') = false

[編集] 関連項目

指定されたロケールにおいて文字が印刷文字に分類されるかどうか調べます
(関数テンプレート) [edit]
文字が印刷文字かどうか調べます
(関数) [edit]
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

10進 16進 8進
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