当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


C++ iswxdigit()用法及代码示例


iswxdigit()是C /C++中的内置函数,该函数检查给定的宽字符是否为十六进制数字字符。它在C++的cwctype头文件中定义。可用的十六进制数字字符为:

  • 位数(0至9)
  • 小写字母从a到f
  • 大写字母从A到F

用法:

int iswxdigit(ch)

参数:该函数接受单个强制性参数ch,该参数指定宽字符,我们必须检查该字符是否为十六进制。


返回值:该函数返回两个值,如下所示。

  • 如果ch是十六进制十进制,则返回非零值。
  • 如果不是十六进制,则返回0。

以下示例程序旨在说明上述函数。

程序1

// C++ program to illustrate 
// iswxdigit() function 
#include <cwchar> 
#include <cwctype> 
#include <iostream> 
using namespace std; 
  
// function to check if 
// the wide character is hexadecimal or not 
void ishexadecimal(wchar_t* str) 
{ 
    bool flag = false; 
    for (int i = 0; i < wcslen(str); i++) { 
        if (!iswxdigit(str[i])) { 
            flag = true; 
            break; 
        } 
    } 
  
    if (flag) 
        wcout << str << L" is not a valid"
              << " hexadecimal number" << endl; 
    else
        wcout << str << L" is a valid"
              << " hexadecimal number" << endl; 
} 
  
// Driver Code 
int main() 
{ 
    wchar_t str[] = L"a3lz"; 
    ishexadecimal(str); 
  
    wchar_t str1[] = L"10dbe"; 
    ishexadecimal(str1); 
  
    return 0; 
}
输出:
a3lz is not a valid hexadecimal number
10dbe is a valid hexadecimal number

程序2

// C++ program to illustrate 
// iswxdigit() function 
#include <cwchar> 
#include <cwctype> 
#include <iostream> 
using namespace std; 
  
// function to check if 
// the wide character is hexadecimal or not 
void ishexadecimal(wchar_t* str) 
{ 
    bool flag = false; 
    for (int i = 0; i < wcslen(str); i++) { 
        if (!iswxdigit(str[i])) { 
            flag = true; 
            break; 
        } 
    } 
  
    if (flag) 
        wcout << str << L" is not a valid"
              << " hexadecimal number" << endl; 
    else
        wcout << str << L" is a valid"
              << " hexadecimal number" << endl; 
} 
  
// Driver Code 
int main() 
{ 
    wchar_t str[] = L"1441a"; 
    ishexadecimal(str); 
  
    wchar_t str1[] = L"xyz2"; 
    ishexadecimal(str1); 
  
    return 0; 
}
输出:
1441a is a valid hexadecimal number
xyz2 is not a valid hexadecimal number

类似函数:C /C++中的isalpha()和isdigit()函数带有示例



相关用法


注:本文由纯净天空筛选整理自IshwarGupta大神的英文原创作品 iswxdigit() function in C/C++。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。