您当前的位置:首页 > 计算机 > 编程开发 > VC/VC++

iswxdigit()_C语言iswxdigit()详解:判断一个宽字符是否是十六进制数字

时间:12-25来源:作者:点击数:

int iswxdigit (wint_t wc);

iswxdigit() 函数用来检测一个宽字符是否是十六进制数字。

十六进制数字包括:0 1 2 3 4 5 6 7 8 9 a b c d e f A B C D E F

iswxdigit() 是 isxdigit()(位于<ctype.h>中)的宽字符版本:如果参数 wc 能够被 wctob() 转换为单个字节的形式,并且转换后的字符使用 isxdigit() 检测返回“真”(非零值),那么 iswxdigit() 也一定会将 wc 判定为十六进制数字。

参数

  • wc

    要检测的宽字符。它可以是一个有效的宽字符(被转换为 wint_t 类型),也可以是 WEOF(表示无效的宽字符)。

返回值

返回值为非零(真)表示wc是十六进制数字,返回值为零(假)表示wc不是十六进制数字。

实例

#include <stdio.h>
#include <wchar.h>
#include <wctype.h>
int main ()
{
    wchar_t str[] = L"E6fd";
    long int number;
    if (iswxdigit(str[0]))
    {
        number = wcstol (str,NULL,16);
        wprintf (L"The hexadecimal number %lx is %ld.\n",number,number);
    }
    return 0;
}

运行结果:

The hexadecimal number e6fd is 59133.

本例中,isxwdigit() 用来检测 str 字符串中第 0 个宽字符是否是有效的十六进制数字,如果是,那么使用 wcstol() 函数将 str 转换为十进制数字。

方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门