isxdigit()函数检查字符是否为十六进制数字字符(0-9,af,AF)。
isxdigit()的函数原型是:
int isxdigit( int arg );
它在<ctype.h>头文件中定义。
isxdigit()函数将单个字符作为参数。
注意:在C编程中,字符在内部被视为int值。
如果传递给的参数isxdigit()是
十六进制字符,isxdigit()返回非零整数。
非十六进制字符,isxdigit()返回0。
#include <ctype.h>
#include <stdio.h>
int main() {
char c = '5';
int result;
//传递十六进制字符
result = isxdigit(c); // 结果不为零
printf("当 %c 被传递给isxdigit()时的结果: %d", c, isxdigit(c));
c = 'M';
//传递了非十六进制字符
result = isxdigit(c); // result is 0
printf("\n当 %c 被传递给isxdigit()时的结果: %d", c, isxdigit(c));
return 0;
}输出结果
当 5 被传递给isxdigit()时的结果: 128 当 M 被传递给isxdigit()时的结果: 0
#include <ctype.h>
#include <stdio.h>
int main() {
char c = '5';
printf("输入一个字符: ");
c = getchar();
if (isxdigit(c) != 0) {
printf("%c是十六进制字符。", c);
} else {
printf("%c不是十六进制字符。", c);
}
return 0;
}输出结果
输入一个字符: f f 是十六进制字符。