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


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


C++ 中的iswxdigit() 函数检查给定的宽字符是否对应于十六进制数。

iswxdigit() 函数在<cwctype> 头文件中定义。

iswxdigit()原型

int iswxdigit(wint_t ch);

iswxdigit() 函数检查 ch 是否为按当前 C 语言环境分类的十六进制数字字符。可用的十六进制数字字符有:

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

参数:

  • ch :要检查的宽字符。

返回:

  • 如果ch 是十六进制数字字符,则iswxdigit() 函数返回非零值。
  • 如果ch 不是十六进制数字字符,则返回零。

示例:iswxdigit() 函数如何工作?

#include <cwctype>
#include <iostream>
#include <cwchar>
#include <clocale>
using namespace std;

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;
}

int main()
{
	setlocale(LC_ALL, "en_US.UTF-8");

	wchar_t str[] = L"ă3ë1f";
	ishexadecimal(str);

	wchar_t str1[] = L"12abf";
	ishexadecimal(str1);

	return 0;
}

运行程序时,输出将是:

ă3ë1f is not a valid hexadecimal number
12abf is a valid hexadecimal number

相关用法


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