標準/拡張機能 | C/C++ | 依存項目 |
---|---|---|
Language Environment |
両方 |
#include <ctype.h>
int isblank(int c);
現行の LC_CTYPE ロケール・カテゴリーが、c にブランク文字属性を割り当てているかどうかをテストします。タブ およびスペース 文字は、POSIX ロケール (名前「POSIX」または「C」) 内で ブランク属性を持っています。
ユーザーのネーム・スペースが侵害されるのを回避するため、この非標準関数には 2 つの名前があります。1 つの名前の接頭部には 2 つの下線文字が付き、もう 1 つの名前の接頭部には付きません。接頭部下線文字が付いていない名前は、LANGLVL(EXTENDED) を使用する場合にのみ表示されます。
この関数を使用するには、その外部エントリー・ポイント名を使用する関数 (つまり、2 つの下線文字で始まる名前) を呼び出すか、または LANGLVL(EXTENDED) で コンパイルする必要があります。LANGLVL(EXTENDED) を使用すると、ヘッダー内の関連情報も表示されます。
isblank() は、現行の LC_CTYPE ロケール・カテゴリーが、c にブランク文字属性を割り当てている場合、ゼロ以外を戻します。
それ以外の場合は、isblank() は 0 を戻します。
/* This example tests if c is a blank type. */
#include <stdio.h>
#include <ctype.h>
#include <locale.h>
void check(char c) {
if ((c != ' ') && (isprint(c)))
printf(" %c is ", c);
else
printf("x%02x is ", c);
if (!isblank(c))
printf("not ");
puts("a blank type character");
}
main() {
printf("¥nIn LC_CTYPE category of locale ¥ with name ¥"%s¥":¥n",
setlocale(LC_CTYPE, NULL));
check('a');
check(' ');
check(0x00);
check('¥n');
check('¥t');
}
In LC_CTYPE category of locale with name “……”;
a is not a blank type character
x40 is a blank type character
x00 is not a blank type character
x15 is not a blank type character
x05 is a blank type character