言う範囲があり、000080-0007FF
16 進数を含む char がその範囲内にあるかどうかを確認したい場合、どうすればよいですか?
例
char t = 0xd790;
if (t is within range of 000080-0007FF) // true
wchar_t t = 0xd790;
if (t >= 0x80 && t <= 0x7ff) ...
C++ では、文字は整数と交換可能であり、それらの値を直接比較できます。
データ型は 0xFF までの値しか保持できないwchar_t
ため、を使用したことに注意してください。char
unsigned short t = 0xd790;
if (t >= 0x80 && t <= 0x7ff) ...
char の最大値は 0xFF であるため、16 進数が 2 を超えるものを比較するために使用することはできません。
コンピューターの 16 進数は (10 進数のように) 数値を出力する方法にすぎないため、単純な古い 10 進数の整数と比較することもできます。
if( (t >= 128) && (t <= 2047) )
{
}
より読みやすく。