#ctype.h
ctype.h
ヘッダー ファイルは、一連の文字処理関数のプロトタイプを定義します。
文字テスト機能
これらの関数は、文字が特定のタイプに属するかどうかを判断するために使用されます。
isalnum()
: 英数字かどうかisalpha()
: 文字かどうかisdigital()
: 数値かどうかisxdigital()
: 16進数文字かどうかis lower()
: 小文字かどうかisupper()
: 大文字かどうかisblank()
: 標準の空白文字 (スペース、水平タブ、改行文字を含む) かどうかisspace()
: 空白文字(スペース、ラインフィード、フォームフィード、キャリッジリターン、垂直タブ、水平タブなど)かどうかiscntrl()
: Ctrl + B などの制御文字であるかどうかisprint()
: 印刷可能な文字かどうかisgraph()
: スペースを除く印刷可能な文字かどうかispunct()
: 句読点かどうか (スペース、文字、数字を除く印刷可能な文字)
テスト対象の文字を引数として受け取ります。パラメータとして EOF が許可されているため、パラメータの型は char
ではなく int
であることに注意してください。
引数の文字が指定された型の場合は、ゼロ以外の整数 (通常は true を意味する '1') を返し、それ以外の場合は '0' (false を意味する) を返します。
以下は、ユーザーが文字を入力し、プログラムがそれが英語の文字であるかどうかを判断する例です。
#include <stdio.h>
#include <ctype.h>
int main(void) {
char ch = getchar();
if (isalpha(ch))
printf("これは英字です。\n");
それ以外
printf("英字ではありません。\n");
0を返します。
}
##文字マッピング関数
このタイプの関数は、対応する文字の形式を返します。主な関数は 2 つあります。
to lower()
: パラメータが大文字の場合は小文字を返し、それ以外の場合は元のパラメータを返します。toupper()
: パラメータが小文字の場合は大文字を返し、それ以外の場合は元のパラメータを返します。
// 文字を大文字に変換します
ch = toupper(ch);
これら 2 つの関数は元の文字を変更しないことに注意してください。
作者: wangdoc
アドレス: https://wangdoc.com/
ライセンス: クリエイティブ・コモンズ 3.0