ctype.h

ctype.h には文字の種類の判定や文字の変換を行うための関数が宣言されています.

ctype.h で宣言されている関数はすべて int 型の引数を持ちます.この引数は unsigned char 型で表現可能か,EOF の値に等しい値である必要があります.(それ以外の値であった場合の動作は未定義です.)
このことから,これらの関数を呼び出す前に引数を unsigned char 型にキャストしてから関数に渡すテクニックがよく使われます.

ctype.h で定義されている関数は isdigit 関数,isxdigit 関数以外はすべてロケール (locale) の影響を受けます.

文字種分類関数

関数名概要備考
isalnum文字がアルファベットもしくは数字かどうかをチェックする
isalpha文字がアルファベットかどうかをチェックする
isblank文字が標準ブランク文字かどうかをチェックするC99
iscntrl文字が制御文字 (control character) かどうかをチェックする
isdigit文字が10進数の数字かどうかをチェックする
isgraph文字が空白 (' ') を除く表示文字 (printing character) かどうかをチェックする
islower文字がアルファベットの小文字かどうかをチェックする
isprint文字が表示文字かどうかをチェックする
ispunct文字が区切り文字 (punctuation character) かどうかをチェックする
isspace文字が標準空白類文字かどうかをチェックする
isupper文字がアルファベットの大文字かどうかをチェックする
isxdigit文字が16進数の数字かどうかをチェックする

大文字小文字変換関数

関数名概要備考
tolower大文字を小文字に変換する
toupper小文字を大文字に変換する