C++ STL 中的 iswxdigit() 函数

c++server side programmingprogramming

本文将讨论 C++ 中的 iswxdigit() 函数,包括其语法、工作原理及其返回值。

iswxdigit() 函数是 C++ 中的一个内置函数,定义在头文件中。该函数检查传递的宽字符是否为十六进制字符。如果传递的参数是十六进制字符,则返回非零整数值 (true),否则返回零 (false)。

十六进制字符是指以下任意字符:−

0 1 2 3 4 5 6 7 8 9 A B C D E F

语法

int iswxdigit(wint_t ch);

该函数仅接受一个参数,即待检查的宽字符。该参数的类型为 wint_t 或 WEOF。

wint_t 存储的是整数类型数据。

返回值

该函数返回一个整数值,可以为 0(false 时)或任何非零值(true 时)。

示例

#include <iostream>
#include <cwctype>
using namespace std;
int main() {
   wint_t a = 'A';
   wint_t b = '9';
   wint_t c = 'g';
   iswxdigit(a)?cout<<"\nIts hexadecimal character":cout<<"\nNot hexadecimal character";
   iswxdigit(b)?cout<<"\nIts hexadecimal character":cout<<"\nNot hexadecimal character";
   iswxdigit(c)?cout<<"\nIts hexadecimal character":cout<<"\nNot hexadecimal character";
}

输出

如果我们运行上述代码,它将生成以下输出 −

Its hexadecimal character
Its hexadecimal character
Not hexadecimal character

示例

#include <stdio.h>
#include <cwchar>
#include <cwctype>
using namespace std;
int main () {
   wchar_t s[] = L"ffff";
   long int num;
   if (iswxdigit(s[0])) {
      num = wcstol (s,NULL,16);
      wprintf (L"The hexadecimal number %lx is %ld.\n",num,num);
   }
   return 0;
}

输出

如果我们运行上述代码,它将生成以下输出 −

The hexadecimal number ffff is 65535.

相关文章