Branch
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
@node isxdigit
@subsection @code{isxdigit}
@findex isxdigit
POSIX specification:@* @url{https://pubs.opengroup.org/onlinepubs/9799919799/functions/isxdigit.html}
Gnulib module: ctype
@mindex ctype
Portability problems fixed by Gnulib:
@itemize
@item
This function cannot be called from plain inline or extern inline functions
on some platforms:
macOS 10.8.
@end itemize
Portability problems not fixed by Gnulib:
@itemize
@item
This function's behavior depends on locale, and it can return nonzero on
arguments other than the usual hexadecimal digits:
mingw, MSVC.
@end itemize
Note: This function does not support
the multibyte characters that occur in strings in locales with
@code{MB_CUR_MAX > 1} (this includes all the common UTF-8 locales).
There are five alternative APIs:
@table @code
@item c_isxdigit
@mindex c-ctype
This function operates in a locale independent way and returns true only for
ASCII characters. It is provided by the Gnulib module @samp{c-ctype}.
@item iswxdigit
@mindex wctype
This function operates in a locale dependent way, on wide characters. In
order to use it, you first have to convert from multibyte to wide characters,
using the @code{mbrtowc} function. It is provided by the Gnulib module
@samp{wctype}.
@item c32isxdigit
@mindex c32isxdigit
This function operates in a locale dependent way, on 32-bit wide characters.
In order to use it, you first have to convert from multibyte to 32-bit wide
characters, using the @code{mbrtoc32} function. It is provided by the
Gnulib module @samp{c32isxdigit}.
@item mb_isxdigit
@mindex mbchar
This function operates in a locale dependent way, on multibyte characters.
It is provided by the Gnulib module @samp{mbchar}.
@item uc_is_xdigit
@mindex unictype/ctype-xdigit
This function operates in a locale independent way, on Unicode characters.
It is provided by the Gnulib module @samp{unictype/ctype-xdigit}.
@end table