wctype.h
wctype.h 提供 ctype.h 里面函数的宽字符版本。
宽字符类型判断函数
下面函数判断宽字符的类型。
- iswalnum() 测试宽字符是否为字母数字
- iswalpha() 测试宽字符是否为字母
- iswblank() 测试这是否是一个宽空白字符
- iswcntrl() 测试这是否是一个宽控制字符。
- iswdigit() 测试这个宽字符是否是数字
- iswgraph() 测试宽字符是否是可打印的非空格字符
- iswlower() 测试宽字符是否为小写
- iswprint() 测试宽字符是否可打印
- iswpunct() 测试宽字符是否为标点符号
- iswspace() 测试宽字符是否为空格
- iswupper() 测试宽字符是否为大写
- iswxdigit() 测试宽字符是否为十六进制数字
wctype(),iswctype()
iswctype()是上一节各种宽字符类型判断函数的通用版本,必须与wctype()配合使用。
iswctype()接受两个参数,第一个参数是一个需要判断类型的宽字符,第二个参数是宽字符类型描述,来自wctype()的返回值。
如果宽字符属于指定类型,iswctype()返回一个非零值,否则返回零。
wctype()用来获取某个种类宽字符的类型描述。
wctype()的参数是一个给定的字符串,可用的值如下:alnum、alpha、blank、cntrl、digit、graph、lower、print、punct、space、upper、xdigit。
wctype()的返回值的类型为 wctype_t,通常是一个整数。如果参数是一个无效值,则返回0。
上面示例用来判断宽字符c是否为数值,相当于iswdigit()。
iswctype()的完整类型判断如下。
大小写转换函数
wctype.h 提供以下宽字符大小写转换函数。
- towlower() 将大写宽字符转换为小写
- towupper() 将小写宽字符转换为大写
- towctrans() 宽字符大小写转换的通用函数
- wctrans() 大小写转换的辅助函数,配合 towctrans() 使用
先看towlower()和towupper()的用法示例。
towctrans()和wctrans()的原型如下。
下面是它们的用法示例。