📅  最后修改于: 2023-12-03 14:59:45.073000             🧑  作者: Mango
在 C++ 中,我们可以使用 isxdigit()
函数来判断一个字符是否是十六进制数字。
int isxdigit(int c);
isxdigit()
函数接收一个表示要判断的字符的整型值,如果该字符是十六进制数字则返回非零值,否则返回零。
一个字符被判定为是十六进制数字,当且仅当它是 '0'
到 '9'
、'A'
到 'F'
、'a'
到 'f'
中的一个。
#include <iostream>
#include <cctype>
int main()
{
char ch1 = 'A', ch2 = 'g', ch3 = '8';
if (isxdigit(ch1)) {
std::cout << ch1 << " 是十六进制数字\n";
} else {
std::cout << ch1 << " 不是十六进制数字\n";
}
if (isxdigit(ch2)) {
std::cout << ch2 << " 是十六进制数字\n";
} else {
std::cout << ch2 << " 不是十六进制数字\n";
}
if (isxdigit(ch3)) {
std::cout << ch3 << " 是十六进制数字\n";
} else {
std::cout << ch3 << " 不是十六进制数字\n";
}
return 0;
}
输出结果为:
A 是十六进制数字
g 不是十六进制数字
8 是十六进制数字
isxdigit()
是一个十分实用的函数,它可以判断一个字符是否是十六进制数字,非常方便。但是需要注意的是,该函数只接受一个字符作为参数,因此如果需要判断一个字符串是否全都是十六进制数字,需要使用循环逐个判断。