iswctype
Header: <wctype.h>
Classifies the wide character wc using the current C locale’s LC_CTYPE category identified by desc.
# Declarations
int iswctype( wint_t wc, wctype_t desc );
(since C95)
# Parameters
wc: the wide character to classifydesc: the LC_CTYPE category, obtained from a call to wctype
# Return value
Non-zero if the character wc has the property identified by desc in LC_CTYPE facet of the current C locale, zero otherwise.
# Example
#include <locale.h>
#include <stdio.h>
#include <wchar.h>
#include <wctype.h>
const char* classify(wchar_t wc, const char* cat)
{
return iswctype(wc, wctype(cat)) ? "true" : "false";
}
int main(void)
{
setlocale(LC_ALL, "ja_JP.UTF-8");
puts("The character \u6c34 is...");
const char* cats[] = {"digit", "alpha", "space", "cntrl", "jkanji"};
for (int n = 0; n < 5; ++n)
printf("%s?\t%s\n", cats[n], classify(L'\u6c34', cats[n]));
}