iswctype

来自cppreference.com
< c‎ | string‎ | wide
定义于头文件 <wctype.h>
int iswctype( wint_t wc, wctype_t desc );
(C95起)

使用desc所标识的当前C本地环境的LC_CTYPE类别,将宽字符wc分类。

目录

[编辑] 参数

wc - 待分类的宽字符
desc - LC_CTYPE类别,从对wctype的调用取得

[编辑] 返回值

wc拥有desc于当前C本地环境的LC_TYPE平面中所标识的属性,则为非零值,否则为零。

[编辑] 示例

#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 standard (ISO/IEC 9899:2011):
  • 7.30.2.2.1 The iswctype function (p: 451-452)
  • C99 standard (ISO/IEC 9899:1999):
  • 7.25.2.2.1 The iswctype function (p: 397-398)

[编辑] 参阅

(C95)
查找当前C本地环境中的字符分类
(函数) [edit]