名前


isalnum, isalpha, isascii, isblank, iscntrl, isdigit, isgraph, islower, isprint, ispunct, isspace, isupper, isxdigit - 文字を分類する

書式


#include <ctype.h>

int isalnum(int c); int isalpha(int c); int isascii(int c); int isblank(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);

説明


これらの関数は、現在のロケールに従って c を分類する。 cunsigned charEOF でなければならない。
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 ロケールでは、空白文字とは、スペース、フォームフィード (’\f’) 、改行(newline) (’\n’) 、復帰(carriage return) (’\r’) 、水平タブ (’\t’) 、垂直タブ (’\v’) である。
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 を返す。

準拠


C99, 4.3BSD. C89 では、これらの関数のうち isascii() と isblank() 以外の すべてが規定されている。 isascii() は BSD や SVr4 の拡張である。 isblank() は POSIX.1-2001 と C99 7.4.1.3 に準拠している。

注意


ある文字がどの種類に入るかということは、現在のロケールに依存する。 たとえば、デフォルトの C ロケールでは isupper() は A のウムラウトを認識できないので、それが大文字だということがわからない。

関連項目


iswalnum(3), iswalpha(3), iswblank(3), iswcntrl(3), iswdigit(3), iswgraph(3), iswlower(3), iswprint(3), iswpunct(3), iswspace(3), iswupper(3), iswxdigit(3), setlocale(3), tolower(3), toupper(3), ascii(7), locale(7)

openSUSE Logo

コンテンツ