Проверить, является ли символ шестнадцатеричной цифрой
#include <ctype.h>int isxdigit( int c );
libc
Функция isxdigit() проверяет, является ли символ c шестнадцатеричной цифрой. Это символы от 0
до 9
и от a
до f
(или от A
до F
).
Не равно нулю, если символ c является шестнадцатеричной цифрой, иначе 0
.
#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);}
Код генерирует следующий вывод:
$ ./a.out Char A is a hexadecimal digit character Char 5 is a hexadecimal digit character Char $ is not a hexadecimal digit character
ANSI, POSIX 1003.1
isalnum(), isalpha(), iscntrl(), isdigit(), isgraph(), islower(), isprint(), ispunct(), isspace(), isupper(), iswxdigit(), tolower(), toupper()
Предыдущий раздел: Описание API системной библиотеки