當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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++。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。