6.24.17 iswxdigit Function
Test for a hexadecimal digit wide character.
Include
<wctype.h>
Prototype
int iswxdigit(wint_t wc);
Argument
-
wc
- The wide character to test.
Return Value
Returns a non-zero integer value if the wide character, wc
, is a hexadecimal
digit wide character; otherwise, returns a zero.
Remarks
A wide character is considered to be a hexadecimal digit wide character if it is in the range
of L‘0’
-L‘9’
, L'a'
-L'f'
,
or L'A'
-L'F'
.
Example
See the notes at the beginning of this chapter or section for
information on using printf()
or scanf()
(and other functions reading and writing the stdin
or
stdout
streams) in the example code.
#include <wctype.h>
#include <stdio.h>
#include <stdbool.h>
int main(void)
{
wchar_t wStr[] = L"A string, 2 wide 4 some.\n";
wint_t wc;
unsigned idx = 0;
bool found = false;
do {
wc = wStr[idx];
if(iswxdigit(wc)) {
if( ! found)
printf("Found matching wide char at position: ");
printf("%s%u", found ? ", " : "", idx);
found = true;
}
idx++;
} while(wStr[idx]);
printf("\n");
}
Example Output
Found matching wide char at position: 0, 10, 14, 15, 17, 22