GNU
2014-03-18
Aliases: isalnum(3), isalnum(3), isalnum(3), isalnum(3), isalnum(3), isalnum(3), isalnum(3), isalnum(3), isalnum(3), isalnum(3), isalnum(3), isalnum(3), isalnum_l(3), isalnum_l(3), isalnum_l(3), isalnum_l(3), isalnum_l(3), isalnum_l(3), isalnum_l(3), isalnum_l(3), isalnum_l(3), isalnum_l(3), isalpha_l(3), isalpha_l(3), isalpha_l(3), isalpha_l(3), isalpha_l(3), isalpha_l(3), isalpha_l(3), isascii(3), isascii(3), isascii(3), isascii(3), isascii(3), isascii(3), isascii(3), isascii(3), isascii(3), isascii(3), isascii(3), isascii(3), isascii_l(3), isascii_l(3), isascii_l(3), isascii_l(3), isascii_l(3), isascii_l(3), isascii_l(3), isascii_l(3), isascii_l(3), isascii_l(3), isblank(3), isblank(3), isblank(3), isblank(3), isblank(3), isblank(3), isblank(3), isblank(3), isblank(3), isblank(3), isblank(3), isblank(3), isblank_l(3), isblank_l(3), isblank_l(3), isblank_l(3), isblank_l(3), isblank_l(3), isblank_l(3), isblank_l(3), isblank_l(3), isblank_l(3), iscntrl(3), iscntrl(3), iscntrl(3), iscntrl(3), iscntrl(3), iscntrl(3), iscntrl(3), iscntrl(3), iscntrl(3), iscntrl(3), iscntrl(3), iscntrl(3), iscntrl_l(3), iscntrl_l(3), iscntrl_l(3), iscntrl_l(3), iscntrl_l(3), iscntrl_l(3), iscntrl_l(3), iscntrl_l(3), iscntrl_l(3), iscntrl_l(3), isdigit(3), isdigit(3), isdigit(3), isdigit(3), isdigit(3), isdigit(3), isdigit(3), isdigit(3), isdigit(3), isdigit(3), isdigit(3), isdigit(3), isdigit_l(3), isdigit_l(3), isdigit_l(3), isdigit_l(3), isdigit_l(3), isdigit_l(3), isdigit_l(3), isdigit_l(3), isdigit_l(3), isdigit_l(3), isgraph(3), isgraph(3), isgraph(3), isgraph(3), isgraph(3), isgraph(3), isgraph(3), isgraph(3), isgraph(3), isgraph(3), isgraph(3), isgraph(3), isgraph_l(3), isgraph_l(3), isgraph_l(3), isgraph_l(3), isgraph_l(3), isgraph_l(3), isgraph_l(3), isgraph_l(3), isgraph_l(3), isgraph_l(3), islower(3), islower(3), islower(3), islower(3), islower(3), islower(3), islower(3), islower(3), islower(3), islower(3), islower(3), islower(3), islower_l(3), islower_l(3), islower_l(3), islower_l(3), islower_l(3), islower_l(3), islower_l(3), islower_l(3), islower_l(3), islower_l(3), isprint(3), isprint(3), isprint(3), isprint(3), isprint(3), isprint(3), isprint(3), isprint(3), isprint(3), isprint(3), isprint(3), isprint(3), isprint_l(3), isprint_l(3), isprint_l(3), isprint_l(3), isprint_l(3), isprint_l(3), isprint_l(3), isprint_l(3), isprint_l(3), isprint_l(3), ispunct(3), ispunct(3), ispunct(3), ispunct(3), ispunct(3), ispunct(3), ispunct(3), ispunct(3), ispunct(3), ispunct(3), ispunct(3), ispunct(3), ispunct_l(3), ispunct_l(3), ispunct_l(3), ispunct_l(3), ispunct_l(3), ispunct_l(3), ispunct_l(3), ispunct_l(3), ispunct_l(3), ispunct_l(3), isspace(3), isspace(3), isspace(3), isspace(3), isspace(3), isspace(3), isspace(3), isspace(3), isspace(3), isspace(3), isspace(3), isspace(3), isspace_l(3), isspace_l(3), isspace_l(3), isspace_l(3), isspace_l(3), isspace_l(3), isspace_l(3), isspace_l(3), isspace_l(3), isspace_l(3), isupper(3), isupper(3), isupper(3), isupper(3), isupper(3), isupper(3), isupper(3), isupper(3), isupper(3), isupper(3), isupper(3), isupper(3), isupper_l(3), isupper_l(3), isupper_l(3), isupper_l(3), isupper_l(3), isupper_l(3), isupper_l(3), isupper_l(3), isupper_l(3), isupper_l(3), isxdigit(3), isxdigit(3), isxdigit(3), isxdigit(3), isxdigit(3), isxdigit(3), isxdigit(3), isxdigit(3), isxdigit(3), isxdigit(3), isxdigit(3), isxdigit(3), isxdigit_l(3), isxdigit_l(3), isxdigit_l(3), isxdigit_l(3), isxdigit_l(3), isxdigit_l(3), isxdigit_l(3), isxdigit_l(3), isxdigit_l(3), isxdigit_l(3)
manpages-ja-dev
Japanese version of the manual pages (for developers)
man-pages-ja
Japanese man (manual) pages from the Japanese Manual Project
manpages-dev
Manual pages about using GNU/Linux for development
man-pages
Linux kernel and C library user-space interface documentation
名前
isalnum, isalpha, isascii, isblank, iscntrl, isdigit, isgraph, islower, isprint, ispunct, isspace, isupper, isxdigit, isalnum_l, isalpha_l, isascii_l, isblank_l, iscntrl_l, isdigit_l, isgraph_l, islower_l, isprint_l, ispunct_l, isspace_l, isupper_l, isxdigit_l - 文字を分類する
書式
#include <ctype.h>
int isalnum(int c); int isalpha(int c); int iscntrl(int c); int isdigit(int c); int isgraph(int c); int islower(int c); int isprint(int c); int ispunct(int c); int isspace(int c); int isupper(int c); int isxdigit(int c);
int isascii(int c); int isblank(int c);
int isalnum_l(int c, locale_t locale); int isalpha_l(int c, locale_t locale); int isblank_l(int c, locale_t locale); int iscntrl_l(int c, locale_t locale); int isdigit_l(int c, locale_t locale); int isgraph_l(int c, locale_t locale); int islower_l(int c, locale_t locale); int isprint_l(int c, locale_t locale); int ispunct_l(int c, locale_t locale); int isspace_l(int c, locale_t locale); int isupper_l(int c, locale_t locale); int isxdigit_l(int c, locale_t locale);
int isascii_l(int c, locale_t locale);
glibc 向けの機能検査マクロの要件 (feature_test_macros(7) 参照):
isascii():
_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE
isblank():
_XOPEN_SOURCE >= 600 || _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L;
または cc -std=c99
または cc -std=c99
isalnum_l(), isalpha_l(), isblank_l(), iscntrl_l(), isdigit_l(), isgraph_l(), islower_l(), isprint_l(), ispunct_l(), isspace_l(), isupper_l(), isxdigit_l():
glibc 2.10 以降: | |
_XOPEN_SOURCE >= 700 | |
glibc 2.10 より前: | |
_GNU_SOURCE |
isascii_l():
glibc 2.10 以降: | |
_XOPEN_SOURCE >= 700 && (_SVID_SOURCE || _BSD_SOURCE) | |
glibc 2.10 より前: | |
_GNU_SOURCE |
説明
これらの関数は、指定したロケールに従って c を分類する。 c は unsigned char か EOF でなければならない。 "_l" が後ろに付かない関数は現在のロケールに基づいてチェックを行う。
"_l" で終わる関数は、ロケールオブジェクト locale で指定されたロケールに基づいてチェックを行う。 locale が特別なロケールオブジェクト LC_GLOBAL_LOCALE (duplocale(3) 参照) の場合や、 locale が有効なオブジェクトロケールハンドルでない場合、 これらの関数の動作は未定義である。
以下のリストでは、 "_l" が後ろに付かない関数の動作を説明する。 "_l" で終わる関数は、現在のロケールではなく、ロケールオブジェクト locale を使う点だけが異なる。
isalnum() | |
英字または数字であるかを調べる。 (isalpha(c) || isdigit(c)) と等価である。 | |
isalpha() | |
アルファベットかどうか調べる。標準の "C" ロケールでは (isupper(c) || islower(c)) と等価である。他のロケールでは、大文字でも小文字でもない他の文字でも isalpha() が true を返すことがある。 | |
isascii() | |
c が、ASCII文字セットに合致する 7ビットの unsigned char であるかを調べる。 | |
isblank() | |
空白文字 (スペースかタブ) であるかを調べる。 | |
iscntrl() | |
制御文字かどうかを調べる。 | |
isdigit() | |
数字 (0〜9) かどうかを調べる。 | |
isgraph() | |
表示可能な文字かどうかを調べる。スペースは含まれない。 | |
islower() | |
小文字かどうかを調べる。 | |
isprint() | |
表示可能な文字かどうかを調べる。スペースも含まれる。 | |
ispunct() | |
表示可能な文字かどうかを調べる。スペースと英数字は含まれない。 | |
isspace() | |
空白文字かどうかを調べる。 "C" ロケールか "POSIX" ロケールでは、空白文字とは、スペース、フォームフィード (\(aq\f\(aq) 、改行(newline) (\(aq\n\(aq) 、復帰(carriage return) (\(aq\r\(aq) 、水平タブ (\(aq\t\(aq) 、垂直タブ (\(aq\v\(aq) である。 | |
isupper() | |
大文字かどうかを調べる。 | |
isxdigit() | |
16進数での数字かどうかを調べる。 0 1 2 3 4 5 6 7 8 9 a b c d e f A B C D E F の文字であるかどうかを調べることと等価である。 |
返り値
文字 c が調べた文字の種類に合っていれば 0 以外を返す。 そうでなければ 0 を返す。
属性
マルチスレッディング (pthreads(7) 参照)
関数 isalnum(), isalpha(), isascii(), isblank(), iscntrl(), isdigit(), isgraph(), islower(), isprint(), ispunct(), isspace(), isupper(), isxdigit() はスレッドセーフである。
バージョン
isalnum_l(), isalpha_l(), isblank_l(), iscntrl_l(), isdigit_l(), isgraph_l(), islower_l(), isprint_l(), ispunct_l(), isspace_l(), isupper_l(), isxdigit_l(), isascii_l() は glibc 2.3 以降で利用可能である。
準拠
C89 では isalnum(), isalpha(), iscntrl(), isdigit(), isgraph(), islower(), isprint(), ispunct(), isspace(), isupper(), isxdigit() が規定されているが、 isascii() と isblank() は規定されていない。 POSIX.1-2001 でもこれらの関数は規定されており、isascii() と isblank() も規定されている (isascii() は XSI 拡張)。 C99 では、ここで挙げた関数のうち isascii() 以外の全てが規定されている。
POSIX.1-2008 では isascii() は廃止予定とされている。ローカライズするアプリケーションで移植性がある形では使用できない点に注意すること。
POSIX.1-2008 では isalnum_l(), isalpha_l(), isblank_l(), iscntrl_l(), isdigit_l(), isgraph_l(), islower_l(), isprint_l(), ispunct_l(), isspace_l(), isupper_l(), isxdigit_l() が規定されている。
isascii_l() は GNU 拡張である。
注意
ある文字がどの種類に入るかということは、現在のロケールに依存する。 たとえば、デフォルトの C ロケールでは isupper() は A のウムラウトを認識できないので、それが大文字だということがわからない。
関連項目
この文書について
この man ページは Linux man-pages プロジェクトのリリース 3.79 の一部 である。プロジェクトの説明とバグ報告に関する情報は http://www.kernel.org/doc/man-pages/ に書かれている。