isxdigit()函數(shù)檢查字符是否為十六進制數(shù)字字符(0-9,af,AF)。
isxdigit()的函數(shù)原型是:
int isxdigit( int arg );
它在<ctype.h>頭文件中定義。
isxdigit()函數(shù)將單個字符作為參數(shù)。
注意:在C編程中,字符在內(nèi)部被視為int值。
如果傳遞給的參數(shù)isxdigit()是
十六進制字符,isxdigit()返回非零整數(shù)。
非十六進制字符,isxdigit()返回0。
#include <ctype.h>
#include <stdio.h>
int main() {
char c = '5';
int result;
//傳遞十六進制字符
result = isxdigit(c); // 結(jié)果不為零
printf("當 %c 被傳遞給isxdigit()時的結(jié)果: %d", c, isxdigit(c));
c = 'M';
//傳遞了非十六進制字符
result = isxdigit(c); // result is 0
printf("\n當 %c 被傳遞給isxdigit()時的結(jié)果: %d", c, isxdigit(c));
return 0;
}輸出結(jié)果
當 5 被傳遞給isxdigit()時的結(jié)果: 128 當 M 被傳遞給isxdigit()時的結(jié)果: 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;
}輸出結(jié)果
輸入一個字符: f f 是十六進制字符。