Scroll to navigation

ISALPHA(3) Linux Programmer's Manual ISALPHA(3)

名前

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);


glibc 向けの機能検査マクロの要件 (feature_test_macros(7) 参照):

isascii():

_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE
isblank():
_XOPEN_SOURCE >= 600 || _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L;
or cc -std=c99

説明

これらの関数は、現在のロケールに従って c を分類する。 cunsigned charEOF でなければならない。

英字または数字であるかを調べる。 (isalpha(c) || isdigit(c)) と等価である。
アルファベットかどうか調べる。標準の "C" ロケールでは (isupper(c) || islower(c)) と等価である。他のロケールでは、大文字でも小文字でもない他の文字でも isalpha() が true を返すことがある。
c が、ASCII文字セットに合致する 7ビットの unsigned char であるかを調べる。
空白文字 (スペースかタブ) であるかを調べる。
制御文字かどうかを調べる。
数字 (0〜9) かどうかを調べる。
表示可能な文字かどうかを調べる。スペースは含まれない。
小文字かどうかを調べる。
表示可能な文字かどうかを調べる。スペースも含まれる。
表示可能な文字かどうかを調べる。スペースと英数字は含まれない。
空白文字かどうかを調べる。 "C" ロケールか "POSIX" ロケールでは、空白文字とは、スペース、フォームフィード ('\f') 、改行(newline) ('\n') 、復帰(carriage return) ('\r') 、水平タブ ('\t') 、垂直タブ ('\v') である。
大文字かどうかを調べる。
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 に準拠している。 POSIX.1-2008 は、 isascii() を廃止予定としている。 ローカライズされたアプリケーションでは、移植性を確保しつつ、 この関数を使用することはできない点に注意すること。

注意

ある文字がどの種類に入るかということは、現在のロケールに依存する。 たとえば、デフォルトの 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), toascii(3), tolower(3), toupper(3), ascii(7), locale(7)

この文書について

この man ページは Linux man-pages プロジェクトのリリース 3.51 の一部 である。プロジェクトの説明とバグ報告に関する情報は http://www.kernel.org/doc/man-pages/ に書かれている。

2010-09-20 GNU