iswctype
iswctype
在头文件 | | |
---|---|---|
int iswctype(wint_t wc,wctype_t desc); | | (自C95以来) |
使用由desc标识的当前C语言环境的LC_CTYPE类别对宽字符wc进行分类。
参数
wc | - | 宽字符的分类 |
---|---|---|
desc | - | 从调用wctype获取的LC_CTYPE类别 |
返回值
如果字符wc在当前C语言环境的LC_CTYPE构面中具有由desc标识的属性,则为非零,否则为零。
例
#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])
}
输出:
The character 水 is...
digit? false
alpha? true
space? false
cntrl? false
jkanji? true
参考
- C11标准(ISO / IEC 9899:2011):
扩展内容
wctype(C95) | 在当前的C语言环境(函数)中查找字符分类类别 |
---|