名前 | 形式 | 機能説明 | 戻り値 | 使用法 | 属性 | 関連項目
#include <ctype.h>int isalpha(int c);
これらのマクロは文字 (char) コードを符号化した整数値を分類します。 各マクロは真の場合には 0 以外を返し、偽の場合には 0 を返します。 isascii() を除いて、これらのマクロの動作は現在の ロケール に左右されます ( setlocale(3C) を参照 )。この動作を修正するには、 setlocale() における LC_TYPE カテゴリ、すなわち、 setlocale(LC_CTYPE, newlocale) を変更します。 C ロケールまたは文字型情報が定義されていない ロケール において、文字は US–ASCII 7-bit コード化文字集合の規則にしたがって分類されています。
isascii() マクロはすべての整数型値に関して定義されています。残りのマクロは、引数が int 、 その値は unsigned char または EOF として表現でき、 <stdio.h> ヘッダーによって定義されていて、 ファイルの終わりを表している場合に限り、定義されます。
以下に定義したマクロにはすべて対応する関数があります。 この関数書式を取り込む場合には、マクロ名を未定義にする必要があります ( たとえば、 #undef isdigit ) 。
「デフォルト」と「標準準拠」で記述しているマクロでは、 標準準拠の動作は標準準拠のアプリケーション ( standards(5) 参照) 、 および <ctype.h> を含む前に __XPG4_CHAR_CLASS__ を定義するアプリケーションで提供されます。
isupper() または islower() が真である任意の文字、あるいは iscntrl() 、 isdigit() 、 ispunct() 、 isspace() のいずれも真でない現在のロケールの定義済み文字集合の 1 つである任意の文字について検査します。 C ロケールでは、 isupper() または islower() が真である文字に対してのみ、 isalpha() は真を返します。
任意の大文字、または iscntrl() 、 isdigit() 、 ispunct() 、 isspace() 、 islower() のいずれも真でない現在のロケールの定義済み文字集合の 1 つである任意の文字について検査します。 C ロケールでは、 isupper() は大文字の ASCII 文字として定義された文字についてだけ真を返します。
任意の小文字、または iscntrl() 、 isdigit() 、 ispunct() 、 isspace() 、 isupper() のいずれも真でない現在のロケールの定義済み文字集合の 1 つである任意の文字について検査します。 C ロケールでは、 islower() は小文字の ASCII 文字として定義された文字についてだけ真を返します。
任意の 10 進数の文字について検査します。
任意の 16 進数の文字 ( [0–9] 、 [A–F] 、または [a–f] )、 あるいは 16 進数を表現する ( 10 から 15 までの数字も含む) 現在のロケールの定義済み文字集合について検査します。 C ロケールでは次の文字だけが含まれます。 0123456789ABCDEFabcdef
isalpha() または isdigit() が真である任意の文字 ( 文字または数字 ) について検査します。
空白文字、タブ、キャリッジリターン、復帰改行、 垂直タブまたはフォームフィード ( 標準空白文字 ) について、あるいは isalnum() が偽である現在のロケールの定義済み文字集合の 1 つについて検査します。 C ロケール において、 isspace() は標準空白文字についてだけ真を返します。
空白文字でなく、 isalnum() または iscntrl() が真でもない印刷文字について検査します。
iscntrl() が偽であり、 isalnum() 、 isgraph() 、 ispunct() 、 空白文字、 現在のロケールで定義済みの print クラスの文字が真である任意の文字について検査します。
マクロを処理する任意の文字への引数が関数の定義域にない場合、 出力結果は未定義になります。 そうでない場合、 マクロまたは関数は、 真のときには 0 以外を返し、 偽のときには 0 を返します。
isdigit() 、 isxdigit() 、 islower() 、 isupper() 、 isalpha() 、 isalnum() 、 isspace() 、 iscntrl() 、 ispunct() 、 isprint() 、 isgraph() 、または isascii() マクロは、 setlocale(3C) がロケールの変更のために呼び出されていない限り、 マルチスレッド上で安全に使用できます。
次の属性については attributes(5) のマニュアルページを参照してください。
属性タイプ | 属性値 |
MT レベル | 例外付き MT-Safe |
CSI | 対応済み |