function
<cctype>
isxdigit
Check if character is hexadecimal digit
Checks whether c is a hexdecimal digit character.
Hexadecimal digits are any of: 0 1 2 3 4 5 6 7 8 9 a b c d e f A B C D E F
For a detailed chart on what the different ctype functions return for each character of the standard ANSII character set, see the reference for the <cctype> header.
In C++, a locale-specific template version of this function (isxdigit) exists in header <locale>.
Parameters
- c
- Character to be checked, casted to an int, or EOF.
Return Value
A value different from zero (i.e., true) if indeed c is a hexadecimal digit. Zero (i.e., false) otherwise.
Example
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
/* isxdigit example */
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
int main ()
{
char str[]="ffff";
long int number;
if (isxdigit(str[0]))
{
number = strtol (str,NULL,16);
printf ("The hexadecimal number %lx is %ld.\n",number,number);
}
return 0;
}
|
isxdigit is used to check if the first character in str is a valid hexadecimal digit and therefore a valid candidate to be converted by strtol into an integral value. Output:
The hexadecimal number ffff is 65535.
|
See also
- isdigit
- Check if character is decimal digit (function
)
- isalnum
- Check if character is alphanumeric (function
)
- isalpha
- Check if character is alphabetic (function
)