检查Char是否在范围内

Check if Char is in range

本文关键字:范围内 是否 Char 检查      更新时间:2023-10-16

如果我有一个范围,比如000080-0007FF我想看看一个包含十六进制的字符是否在这个范围内,我该怎么做?

示例

char t = 0xd790;
if (t is within range of 000080-0007FF) // true
wchar_t t = 0xd790;
if (t >= 0x80 && t <= 0x7ff) ...

在C++中,字符可以与整数互换,并且可以直接比较它们的值。

请注意,我使用了wchar_t,因为char数据类型最多只能容纳0xFF的值。

unsigned short t = 0xd790;
if (t >= 0x80 && t <= 0x7ff) ...

由于一个字符的最大值为0xFF,您不能用它来比较任何十六进制数字超过2的字符。

由于计算机上的十六进制只不过是打印数字(如十进制)的一种方式,因此您也可以与普通的10进制整数进行比较。

if( (t >= 128) && (t <= 2047) )
{
}

可读性更强。