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 是十六进制字符。