1. ホーム
  2. c++

[解決済み] unsigned charとは何ですか?

2022-03-19 16:38:09

質問

C/C++では、どのような unsigned char は何に使うのですか?通常の char ?

解決方法は?

C++では、3つの 明確な の文字型があります。

  • char
  • signed char
  • unsigned char

に文字型を使用している場合、その文字型は テキスト を使用すると、非限定的な char :

  • のような文字リテラルの型である。 'a' または '0' (C++のみ、Cではその型は int )
  • のようなC言語の文字列を構成する型である。 "abcde"

また、数値の値として計算されますが、その値が符号付きか符号なしとして扱われるかは不定です。不等号による文字比較に注意。ただし、ASCII(0-127)に限定すれば、ほぼ安全。

もし、文字型を 数値 を使用します。

  • signed char を与える。 少なくとも 127から127の範囲です。(-128 から 127 が一般的です)
  • unsigned char を与える。 少なくとも 0から255の範囲。

C++の標準では、各数値型がカバーする必要のある最小限の値の範囲のみを示しているからです。 sizeof (char) は1(つまり1バイト)でなければなりませんが、1バイトは理論上、例えば32ビットであってもかまいません。 sizeof として、そのサイズを報告することになります。 1 - というのは かもしれない ある sizeof (char) == sizeof (long) == 1 .