Defined in header <wctype.h> | ||
---|---|---|
int iswctype( wint_t wc, wctype_t desc ); | (since C95) |
Classifies the wide character wc
using the current C locale's LC_CTYPE category identified by desc
.
wc | - | the wide character to classify |
desc | - | the LC_CTYPE category, obtained from a call to wctype |
Non-zero if the character wc
has the property identified by desc
in LC_CTYPE facet of the current C locale, zero otherwise.
#include <locale.h> #include <wchar.h> #include <wctype.h> #include <stdio.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? %s\n", cats[n], classify(L'\u6c34', cats[n])); }
Output:
The character 水 is... digit? false alpha? true space? false cntrl? false jkanji? true
(C95) | looks up a character classification category in the current C locale (function) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/c/string/wide/iswctype