isxdigit()

Test a character to see if it's a hexadecimal digit

Synopsis:

#include <ctype.h>

int isxdigit( int c );

Arguments:

c
The character you want to test.

Library:

libc

Use the -l c option to qcc to link against this library. This library is usually included automatically.

Description:

The isxdigit() function tests for any hexadecimal-digit character. These characters are the digits 0 through 9 and the letters a through f (or A through F).

Returns:

Nonzero if c is a hexadecimal digit; otherwise, zero.

Examples:

#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>

char the_chars[] = { 'A', '5', '$' };

#define SIZE sizeof( the_chars ) / sizeof( char )

int main( void )
{
    int i;

    for( i = 0; i < SIZE; i++ ) {
        if( isxdigit( the_chars[i] ) ) {
            printf( "Char %c is a hexadecimal digit",
                the_chars[i] );
        } else {
            printf( "Char %c is not a hexadecimal digit",
                the_chars[i] );
        }
    }
    
    return EXIT_SUCCESS;
}

produces the output:

Char A is a hexadecimal digit character
Char 5 is a hexadecimal digit character
Char $ is not a hexadecimal digit character

Classification:

ANSI, POSIX 1003.1

Safety:
Cancellation point No
Interrupt handler Yes
Signal handler Yes
Thread Yes

See also:

isalnum(), isalpha(), iscntrl(), isdigit(), isgraph(), islower(), isprint(), ispunct(), isspace(), isupper(), iswxdigit(), tolower(), toupper()