コンピュータは、文字をなんらかの文字コードを使って表現します。文字コードとは、1つ1つの文字に異なる整数を割り当てるルールを定めたものです。文字型が扱うものは、1つの文字の文字コードということになりますが、文字コード自体にさまざまな種類があり、どの文字コードを使用するのかは、プログラミング言語によって違いがあります。
文字型が扱うのは1文字だけなので、複数の文字の集合体(ただし、0文字の文字列ということはありえる)である文字列を表現するためには、専用の文字列型を用いるか、文字型の配列を使います。
C言語では、歴史的にさまざまな文字コードに対応してきたため、char、wchar_t、char16_t、char32_t といったように、文字を扱うための型が複数存在しています。
char型は、singed char、unsigned char とともに、文字型として分類されています[1]。
wchar_t、char16_t、char32_t は、標準ライブラリが typedef を使って整数型に別名を与えたものであり、言語レベルで定義された型ではありません(言い換えると、使うために #include が必要である)。そのため、文字型として分類されてはいません。
C言語の char型についてはC言語編第8章、wchar_t、char16_t、char32_t についてはC言語編第47章で解説しています。また、型の分類表も参照してください。
C++ にも、C言語と同様に、char、wchar_t、char16_t、char32_t があります。
C++ の場合、これらの型は言語レベルで定義された標準の型(基本型)ですが、文字型に分類されるのは char型(と、signed char、unsigned char)だけです。wchar_t、char16_t、char32_t は整数型に分類されています[2]。
Programming Place Plus のトップページへ
はてなブックマーク に保存 | Pocket に保存 | Facebook でシェア |
X で ポスト/フォロー | LINE で送る | noteで書く |
![]() |
管理者情報 | プライバシーポリシー |