Cライブラリ関数 -isxdigit()
説明
Cライブラリ関数int isxdigit(int c)渡された文字が16進数であるかどうかをチェックします。
int isxdigit(int c)引数 c は単一の文字です。
16進数は通常、数字0〜9と文字A〜F(または a~f)で表され、A〜Fは10〜15を表します:0 1 2 3 4 5 6 7 8 9 a b c d e f A B C D E F。
宣言
以下は isxdigit() 関数の宣言です。
int isxdigit(int c);
引数
- c-- これはチェックする文字です。
戻り値
c が16進数である場合、この関数はゼロ以外の整数値を返します。それ以外の場合は0を返します。
例
以下の例は、isxdigit() 関数の使用方法を示しています。
例
#include <ctype.h>
#include <stdio.h>
int main() {
char c = '5';
int result;
// 文字を渡す
result = isxdigit(c); // result は0以外を返す
printf("%c を isxdigit() 関数に渡した結果: %d", c, isxdigit(c));
printf("\n"); // 改行
c = 'M';
// 非16進数を引数として渡す
result = isxdigit(c); // result は0
printf("%c を isxdigit() 関数に渡した結果: %d", c, isxdigit(c));
return 0;
}
上記のプログラムをコンパイルして実行すると、次の結果が得られます:
5 传入到 isxdigit() 函数结果为: 1 M 传入到 isxdigit() 函数结果为: 0
文字列中の16進数字の文字を見つける:
例
#include<ctype.h>
#include<stdio.h>
int main()
{
char str[]="123c@#run[oobe?";
int i;
for(i=0;str[i]!='\0';i++) {
if(isxdigit(str[i])) {
printf("%c は16進数です\n",str[i]);
}
}
}
上記のプログラムをコンパイルして実行すると、次の結果が得られます:
1 是一个十六进制数 2 是一个十六进制数 3 是一个十六进制数 c 是一个十六进制数 b 是一个十六进制数 e 是一个十六进制数その他の拡張
C標準ライブラリ - <ctype.h>