isxdigit | Programming Place Plus C言語編 標準ライブラリのリファレンス

トップページC言語編標準ライブラリのリファレンス(名前順)

トップページC言語編標準ライブラリのリファレンス(ヘッダ別)


isxdigit関数

概要

16進数字かどうか判定する。

ヘッダ

ctype.h

形式

int isxdigit(int c);

引数

c

判定する文字。

戻り値

引数c が16進数字であれば 0以外を返し、そうでなければ 0 を返す。

詳細

ロケールの LC_CTYPE カテゴリの影響は受けない。
16進数字とは、0~9、a~f、A~F のいずれかのことである。

注意

引数c が 0~UCHAR_MAX あるいは EOF のいずれかに含まれていない場合の動作は未定義である。

使用例

#include <stdio.h>
#include <ctype.h>
#include <limits.h>

int main(void)
{
    for (int i = 0; i < UCHAR_MAX; ++i) {
        if (isxdigit(i)) {
            printf("%c (%x)\n", i, i);
        }
    }
}

実行結果

0 (30)
1 (31)
2 (32)
3 (33)
4 (34)
5 (35)
6 (36)
7 (37)
8 (38)
9 (39)
A (41)
B (42)
C (43)
D (44)
E (45)
F (46)
a (61)
b (62)
c (63)
d (64)
e (65)
f (66)

関連

数字のみの判定であれば、isdigit関数 を使う。
ワイド文字版の iswxdigit関数がある。

解説章


参考リンク


更新履歴

’2018/4/22 解説中で C95 を(C89 に対して)特別扱いしないように修正。そもそもC言語編は C95ベースなので、余計な説明は省く。

’2018/4/10 ロケールに関する記述を追加。

’2018/1/22 新規作成。



標準ライブラリのリファレンス(名前順)のトップページへ

標準ライブラリのリファレンス(ヘッダ別)のトップページへ

C言語編のトップページへ

Programming Place Plus のトップページへ



はてなブックマーク に保存 Pocket に保存 Facebook でシェア
X で ポストフォロー LINE で送る noteで書く
rss1.0 取得ボタン RSS 管理者情報 プライバシーポリシー
先頭へ戻る